• PHP网站开发方案实例


    一、 开发成员

    a)项目主管
    b)页面美工
    c)页面开发
    d)服务端程序开发
    e)系统与数据管理
    f)测试与版本控制

    二、 网站组开发简明流程

    PHP网站开发方案实例

    三、 开发工具与环境

    a) 服务器配置
    i. Web服务器: FreeBSD6.1+Apache2.0+PHP5.0,SVN版本控制服务(仅测试机)。
    ii. 数据库服务器: WIN2003 server+SQL Server 2000+MySQL5.0,CLUSTERED SERVER 集群服务,邮件服务器。
    iii. 100M/1000M交换机
    b) 开发工具
    i. 前台: Macromedia flash 8.0、Macromedia Dreamweaver 8.0、Adobe photoshop CS
    ii. 后台: Zend Studio 5.2、SQL Server EntERPrise Manager、PhpMyAdmin

    四、 技术规则

    a) 浏览器兼容策略: 兼容IE5.0以上版本,同时兼容FireFOX2.0以上浏览器。
    b) 搜索引擎优化: 着重针对baidu、Google、Yahoo搜索优化,制作清晰明确的网站地图。
    c) 字符编码规则: 中文网站一率采用GB2312字符标准。
    d) 文件与文件夹命名: 为兼容win32与Unix系统,一率采用小写字母命名。
    e) 公共文件命名规则:
    i. 默认首页: index.htm、index.html、index.php
    ii. 主CSS文件: style.css
    iii. 主JS文件: main.js
    iv. 主程序配置文件:config.php
    f) 公共文件目录统一命名
    i. 图片目录: /images 或者 /pic
    ii. CSS样式目录: /css
    iii. JS脚本程序目录:/js
    iv. 模板文件目录: /tpl
    v. 类或者组件目录:/class 或者 /lib
    g) 页面脚本规范: 统一采用JavaScript
    h) 代码中的类、函数、变量名:统一使用近似英文单词命名,如:DefaultClass 或者 default_class
    i) 代码注释规则:所有程序中的函数或者过程必须加确切的注释。
    j) 数据库相关规则
    i. 数据表与字段命名规则: 全部小写字母命名,并归类命名前缀,如:用户表组,user_passport、user_info、user_service….
    ii. 日期类型字段: 统一使用unix时间戳,char(12)
    iii. 主关键字命名: 所有表必须建立以id命名的主键。
    k) 模板组件规则: 统一使用兼容版本的Smarty,统一缓存目录,便于Unix下权限控制。
    l) 数据库虚拟层: 统一使用Adodb 或 Pdo,SQL语句要兼容现有主流数据库规则。
    m) 工厂模式开发规则: 以comm.php为中心开发或继承组件类,统一控制文件调用IO与类的实例化。
    n) 面向对象开发规则: 所有函数必须以类 ---> 过程的方式存在。
    o) SQL封装规则: 所有SQL语句及数据库查询必须存在于过程中。
    p) URL转向规则: 为优化搜索引擎,尽量使用Apache的mod_rewrite模块来美化URL,如:http://www.yourname.com/action.php?id=123 转化为:http://www.yourname.com/action/id/123 或者http://www.yourname.com/action/id_123.html

    五、 网站安全与维护策略

    a) 服务器与数据库安全:
    i. 建立完善的病毒防御机制,安装防火墙,关闭服务器上任何不必要的端口以及服务。
    ii. 统一管理用户权限,定期跟踪用户及系统事件,定期查看系统日志。
    b) 容灾与备份机制:
    i. 建立数据库集群,至少保持一台服务器同步数据,确保意外发生时数据库系统可自动转移到正常的服务器稳定运行。
    ii. 定期备份文件及数据,通过各种方式保存数据与文件。
    c) 程序安全策略:
    i. SQL注入防范:坚决过滤不可预见的非法字符,严格做好数据库查询、更新的SQL语句检验。
    ii. 不使用来路不明的第三方源码,不轻易将未知代码拷贝到服务器

  • 相关阅读:
    程序、进程、线程区别与联系
    SQL常用知识与必须掌握的面试常问SQL语句
    快速搭建一个基于react的项目
    原生js判断设备类型
    在vue项目中设置BASE_URL
    纯前端实现数据导出excel文件
    原生js实现拖拽功能
    使用Echarts实现折线图的一点总结
    在vue项目中显示实时时间(年月日时分秒)
    在vue项目中使用MD5.js
  • 原文地址:https://www.cnblogs.com/luluping/p/1560994.html
Copyright © 2020-2023  润新知