您的位置:

某php项目恢复部署(某php项目恢复部署数据)

本文目录一览:

php项目如何部署在服务器上

一、阿里ECS服务器配置

     1.因为线上已经有几个站点了.所以要配置ngnix多站点

     2.阿里云ecs目录结构,ngxin 在/etc/nginx/目录下,配置的地方主要是nginx.config文件。或者在conf.d新建一个配置文件然后在include到nginx.config文件中

        

     3.nginx.config新建站点信息

server {

listen       80;

server_name  www.你的域名.com;

root         站点的相对路径;

index index.php index.html index.htm;

#charset koi8-r;

#access_log  /var/log/nginx/host.access.log  main;

# Load configuration files for the default server block.

include /etc/nginx/default.d/*.conf;

location / {

#try_files $uri $uri/ /index.php;

root   /opt/www/pcweb/ytyy_pc;

index  index.php index.html index.htm;             if (!-e $request_filename) {   rewrite  ^(.*)$ /index.php?s=$1  last;   break;    }}             url重写(可以没有)

# redirect server error pages to the static page /40x.html

#

error_page  404              /404.html;   40错误页面配置

location = /40x.html {

}

# redirect server error pages to the static page /50x.html

#

error_page   500 502 503 504  /50x.html;  50错误页面配置

location = /50x.html {

}

location ~ \.php$ {

root           站点相对路径;

fastcgi_pass   127.0.0.1:9000;

fastcgi_index  index.php;

fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;

include        fastcgi_params;

}

location ~ /\.ht {

deny  all;

}

}

配置文件的基本内容如上;

配置完成后测试配置文件是否正确

这样配置就可以使用了

然后重启nginx服务器 

这样nginx配置就结束了可以使用了。吧站点文件放到对应的目录下面。我直接git clone过去的。

二.thinkphp项目文件转移

本来以为上传完就结束了。上传上去碰到的第一个问题就是访问页面报错,页面被电信的114页面劫持了。。。麻蛋 看不到报错

万能百度大法

解决方法1.internet高级选项-隐私-站点  新加阻止站点

解决方法2:控制面板-网络和internet-本地连接-属性-ipv4  使用如下ip

终于搞定可以看到报错页面了。。。。。。麻蛋。再次开启万能百度大法

 

 

 得到最终结论是文件目录权限引起的。thinkphp 的runtime目录没有写入权限。。thinkphp文件上传到阿里的好像都有这个问题。解决问题很简单

进入到项目文件目录

直接跟文件最高权限

chmod -R 777 [目录]  //linux修改文件权限

 

PHP项目的标准部署方式是怎样的

PHP 的世界里有 Composer(),这个玩意儿你可以联想成 npm 之于 Node.js,gem 之于 Ruby。它有一个官方的包仓库 Packagist()。

一般的项目部署也有相关的工具,例如 phing(),可以认为是 Ant 之于 Java。

例来说,现在做的项目用的是 Github+Jenkins 的方案,每个开发人员从主仓库 fork 到自己账户,然后提交 Pull

Request。Pull Request 会触发 Jenkins 的 Pull Testing,将改动部署到 QA

环境中,然后该怎么测试就怎么测试吧。部署脚本的工作主要包括清理原先的项目文件和数据库,取回代码库中最新的版本,跑 phing(包括数据库的

Migration、运行 PHPUnit, PHP CodeSniffer等一系列QA工具)等。最终部署到生产环境的过程是类似的。

PHP 项目部署,有什么好用的工具,方案

需求是研发团队工作的起点,很多研发团队的开发过程混乱的源头都在于需求管理没有做好。这里是本人收集整理的几个需求管理系统,希望对大家有点帮助。

Rational RequisitePro

Rational RequisitePro是一个强大、易用、集成的需求管理产品。而通过与Rational系列软件产品的广泛集成,大大扩展了RequisitePro及其他产品的功能,给软件工程生命周期内的各个阶段都提供了强大、方便的信息查询、跟踪、管理功能。从而能够促进更好的团队沟通、帮助管理变更和评估变更的影响,帮助验证所有的规划需求被交付物所满足、降低项目风险。

网址:

IBM Rational DOORS

IBM Rational DOORS前身是大名鼎鼎的Telelogic DOORS,被IBM收购后更名为IBM Rational DOORS。DOORS

是最老牌的企业需求管理套件,通过使用DOORS/ERS,可以帮助企业更有效地进行沟通并加强协作与验证,从而降低失败的风险。通过对整个组织实施多种需求管理的方法,可以使项目的管理更加透明。它可以使企业跨越地域与组织的边界来按国际化的方式运行。

网址:

青铜器RDM

青铜器RDM是IPD+CMMI+Scrum一体化研发管理解决方案,针对需求管理,涵盖需求的全生命周期管理,从市场客户需求收集(创意管理)、产品路线图(Roadmap)定义、产品特性需求、产品设计需求与规格、项目开发Build划分(迭代划分)、测试用例库、测试计划、测试执行、缺陷跟踪、全方位的需求跟踪矩阵RTM;同时实现Scrum开发模式,基于项目需求直接生成项目任务,实现基于需求和缺陷的迭代开发模式;全面实现了IPD、CMMI、Scrum业界主流研发管理框架的需求管理要求。

网址:

比较内容

Telelogic Doors

IBM Rational RequisitePro

青铜器RDM

结论

项目级别的比较

(1)Doors 将所有的与需求相关的数据均存放在服务器上的 doors 数据库(不是商业数据库)中。

(2)一个 DOORS Database 能够同时支持许多个不同的项目开发,从而使得新的项目能够复用和共享过去的文件和信息。不同项目(文件)之间的追踪关系可以跨项目建立。

(1)ReqPro 将需求的数据存放在数据库中,而把与需求相关的上下文信息存放在 Word 文档中。

(2)一个 Database 只能支持一个项目的开发 , 无法支持对过去文件和信息的复用和共享。不同项目之间无法建立联系。

(1)RDM所有项目的需求统一保存在一个Database,该数据库可以是Oracle、Sql、Mysql任何商用数据库

(2)不同项目之间的需求可以相互关联、共享;同时支持产品标准化需求库,从而支持平台化产品开发模式,可以基于产品标准需求库构建项目,实现具体客户的个性化。

RDM、Doors 占优

(1) Doors 中的项目显然是从企业的级别考虑,任何一个用户,只要有权限,就可以访问企业中的任何一个项目的需求数据。

(2)RDM需求集中保存,便于统一维护,跨项目共享也更方便,同时产品通用需求库概念,支持平台化开发模式,兼顾平台化和项目个性化要求。

多人同时访问

(1)一个时刻,只能有一个人修改一个 module (类似于 requisitepro 中的一个 word 文档),其他人只读方式打开。

DOORS 有访问方式:独占、共享和只读。当某人独占打开某个 module 时,其他人只能只读访问。但 DOORS 提供共享方式,特别是可以允许不同的人同时修改同一文档的不同部分,比如 A 用户负责修改第一章, B 用户负责修改第二章。这是 tool-setup for sharing 的功能。

(1)一个时刻,只能有一个人修改一个 word 文档。其他人只读方式打开。

(1)RDM支持需求检入/检出,版本化操作;同时不同版本之间的差异化能自动对比分析

(2)RDM的需求可以灵活根据需求类型、需求状态划分权限,支持多人并发对需求进行编辑、维护。

RDM占优,ReqPro、Doors两者相同。

需求创建和编辑

在 doors 中创建和编辑(与 word 的使用类似。)创建方法简单直观。

在 word 文档中创建和编辑,创建方法和理解上略有困难。在 requistitepro 中创建的需求放在数据库中,不能被文档使用

RDM支持在线创建编辑需求 和 基于Excel编辑需求,然后集中导入RDM 两种模式。

在线编辑支持富文本、直接插入图片等个性化手段

各有优劣, ReqPro、RDM略占优

(1) doors 中创建和使用简单,不需要 word 。但是,它毕竟没有 word 的编辑功能强大。

(2)RDM支持富文本、直接插入图片方式,能使需求展现的更直观

需求修改历程的纪录和管理

(1)可以针对 module (类似于 requisitepro 中的一个 word 文档)打基线。可以比较基线之间的不同点。基线可以作为创建新的 moduel 的模版。

(2)需求项的修改有历史记录,并且可以回滚到任何一个历史点的内容。

(3)可以和主流的配置管理工具集成使用;

(1)需求项的修改有历史记录。

(2)可以和 clearcase 工具集成使用 , 完成基线功能,但是只是形成版本,没有比较功能。

(1)RDM支持需求检入/检出,版本化记录,同时一个页面展现版本间差异

(2)RDM本身提供变更管理流程,并且流程可配置,需求和流程的集成性高

(3)RDM同时提供变更关联提醒功能,需求变更后自动通知子需求、关联需求、对应的测试用例。

Doors、RDM占优

(1)优势明显,而且该功能比较有用。

(2)RDM的版本间差异对比、变更关联通知非常有价值。

对需求变更的管理

Doors 本身具备变更管理系统,即变更的提交,评审,应用,并因此可以给指定的用户分配不同的角色(如提交者,审阅者,应用者);内容讨论能力较弱

可以和主流的变更管理工具集成使用;

DOORS 可以和 ClearQuest 集成,可以使用 CQ 的功能扩展变更流程,使需求项和变更请求紧密相关

RequisitePro 有针对需求项的讨论功能。类似于 bbs 中的主题讨论。使用比较方便。

讨论没有区分权限,但是有明显的讨论人和讨论时间。

与 clearquest 工具集成;

1)RDM支持需求检入/检出,版本化记录,同时一个页面展现版本间差异

(2)RDM本身提供变更管理流程,并且流程可配置,需求和流程的集成性高

(3)RDM同时提供变更关联提醒功能,需求变更后自动通知子需求、关联需求、对应的测试用例。

各有优劣, RDM 略占优

多个需求项及追踪关系的显示

Doors 能够在一个专门的界面上给用户一次显示一个 module 文件中的所有需求项和相互之间的追踪关系 ( 即支持 in 和 out 的需求追踪 ) ,从而支持用户同时观看所有相互依赖的需求项。

有专用的追踪矩阵图,以二维表的形式展示需求项之间的追踪关系。

(1)针对单个需求,一个页面可以追踪到市场需求、产品需求、设计需求、物理模块、项目构建、测试用例、开发任务、测试缺陷,实现端到端追踪

(2)针对集中追踪,提供跟踪矩阵、跟踪表两种模式

RDM占优

(1)RDM跟踪更全面,涉及到测试用例、项目任务、物理模块、测试缺陷。

(2)RequisitePro 的功能强大,界面也比较复杂,使用不便,但RDM同样功能,RDM界面更清晰、明了。

可疑 link (需求变更)的通知

(1)当 link 的一方产生变更时, Doors 可以自动产生提示符通知另一方,而不需要在 link 的矩阵上查找;

(2)可以清楚地看到导致可疑 link 的需求内容变更情况

没有自动提示,必须通过追踪关系矩阵来查找,当追踪矩阵比较大时,非常费时费力;

(1)当 link 的一方产生变更时, RDM 可以自动产生提示符通知另一方,同时自动把变更的信息推给对方

(2)Link方不仅仅是需求还涵盖测试用例,通知更全面

RDM、Doors 占优

(1)RDM更优,可以灵活配置哪些属性变化才通知,同时变化信息能自动推送给link方,更易用

(2)Doors 的可疑 link 原理是通过需求内容的改变自动置 link 为可疑,比较科学。

与已有产品的集成

Clearquest 、 clearcase 、 rose

Clearquest 、 clearcase 、 rose 、 testManager 、 project2002

RDM本身就是研发一体化平台,可以使客户最大程度节约投入

Requistitepro 占优

与 word 的集成

需求的创建和修改工作完全在 doors 中完成。只是提供了导出符合格式的 word 文档。

与 word 紧密集成,需求的创建和修改工作大部分在 word 中完成。

需求的创建和修改工作在 RDM 中完成。灵活定义导出的内容和格式,可以直接导出为Word、PDF、Excel格式。

Requistitepro 、RDM占优

从现有 word 文档的导入功能

。支持,基本上是 word 文档中的一段对应 doors 中的一个需求项( object )。同时, word 中的表格、图像等 ole 对象也可以导入。

支持 Word 文档的导入,同时支持 table , picture 和 OLE object 的导入

不支持普通 word 文档的导入

不支持Word,支持Excel

Doors 占优

离线编辑功能

没有找到离线编辑的好方法。

可以使用 word 把文档下载到本地编辑(可以离开网络环境)。然后再提交到 requisitepro.

没有找到离线编辑的好方法。

Requistitepro 占优

该功能比较有用。

权限控制

Doors 具有灵活的权限控制,包括:只读,修改,创建,删除,管理等五种级别。权限控制可以针对每一个用户在每一个 database ,项目目录,文件,实施等;

权限控制的种类和级别有限。包括:只读、完全控制。权限只能针对项目 。

RDM 具有非常灵活的权限控制,包括:只读、编辑、创建、删除、管理等五种级别。同时可以基于需求字段属性配置权限

RDM 占优

数据备份和恢复

简单有效

复杂,要保证文件和数据库同时备份。可能使用 access 数据库会 …

简单方便,只需要配置数据库、服务器上的文件库目录即可

RDM、Doors 占优

异地需求管理

(Multi-site)

Doors 提供灵活的方式实现需求异地管理的方式; Doors 强大的性能优势也保障了大型项目异地需求开发 / 管理的可能;

无异地使用模式

RDM是B/S结构,提供领会异地访问管理模式

RDM已经有众多实际案例

是否易于掌握

容易使用

较容易使用

容易使用,但前期配置有一定的工作量

Requistitepro 上手较快(因为是在 word 中编辑),想各个功能用的比较顺手需要一段时间。

Doors 大部分功能比较容易掌握。

请教如何部署php项目(只要能跑起来就可以了)

php源码直接放到apache的安装目录下的home文件夹里,index.php是入口文件,要跟home文件夹平级

php项目 如何部署??

首先是要对数据结构进行规划,然后根据项目大小决定是否用php框架或模板技术,之后就是后台功能开发,最后再把数据在前台展示出来;这只是基本步骤,真正实施起来,涉及的东西是很多的,要注意的细节也很多