1、网站数据库的安全
网站数据库经常被网络“黑客” 扫描端口,然后暴力破解
数据库须独立一台服务器
开启数据库服务器的防火墙,只允许固定的几个IP 访问 数据库服务器
数据库权限的配置,数据库分为读取和写入权限
“前端账户”分配 只读权限 和 必要的写入存储过程的权限
“后台管理系统账户” 给予必要的写入权限
2、web 服务器的安全
web 服务器 可以分解为 “动态页面 服务器”,和 “静态服务器”
(1)“静态服务器” 比较安全,禁用掉 “静态服务器” 服务器执行动态文件的所有模块,可以提升性能,同时保证服务器安全
(2)主要考虑动态页面服务器的安全
动态服务器会执行动态页面(动态页面功能强大,可以操作磁盘文件等,容易被 “黑客”利用) ,
所以 在进行 文件上传 等功能的开发的时候,尽可能独立设计,不要集成到现有的系统中
如:图片服务器,分解为 “上传” 和 “前端用户查看图片”,上传可以单独一个站点 给予 写入权限和动态页面执行权限,
“前端用户查看图片” 可以禁用掉 执行动态文件的所有模块
3、系统的灾难性防止(宕机、机房线路问题、服务器更新造成系统崩溃等)
要做到很好的灾难性防治,需要有快速迁移的能力(网站程序足够简单、足够小、配置方便 ,从而保证即使手工迁移也能快速部署 恢复网站)
服务器可以假设为 “源服务器” 和 “生产服务器”
要做到:只要“源服务器” 正常, “生产服务器” 即使挂掉 也可以 快速部署一台 “源服务器” 的副本(通过必要的软件进行同步)
4、阶段规划
开发 应该分为 “调试阶段” 和 “上线阶段” 、“迭代阶段”
“调试阶段” 完成之后,部署到 “源服务器” ,再由“源服务器” 分发到 “生产服务器”
“迭代阶段” 不应该在 “源服务器”上去修改,而是创建一个新的版本(版本服务器的建立) ,
新的版本再进行 “调试”->“上线”->“迭代”,循环进行
一旦出现重大错误,可以还原到某个版本状态,也极大的保证了安全
5、协同工作
每个成员的工作都是一种服务,服务的质量直接会影响下一个流程的进行(速度、质量)
(1)产品经理策划产品
(2)架构师 根据产品 策划 技术架构
(3)“运维” 搭建好 健壮的服务器环境,保证服务器的稳定
(4)“美工” 完成 “效果图” 交付给 “前端开发人员”,
(5)“前端开发人员” 完成 “html css js ” 交付给 “服务器端程序员”
(6)“服务器端程序员” 实现项目功能
每个过程的人员都希望 得到的 “半成品” 是可以经过尽量少的修改就可以 直接使用的
所以,上一个过程的人 要考虑到 他的一举一动 是否会给下一个过程人员增加麻烦
否则就会造成 工作的延误和厌恶
原文链接:https://www.cnblogs.com/xiaopohou/articles/3279581.html
原创文章,作者:优速盾-小U,如若转载,请注明出处:https://www.cdnb.net/bbs/archives/18058