Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/240.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在旧apache安装上使用PHP5.3_Php_Mysql_Apache_Fastcgi - Fatal编程技术网

在旧apache安装上使用PHP5.3

在旧apache安装上使用PHP5.3,php,mysql,apache,fastcgi,Php,Mysql,Apache,Fastcgi,我为一个客户机完成了一个php/mysql项目,昨天准备将其部署到客户机上,但很快就失败了。老实说,这是我的错,我没有做足够的检查之前,我开始-但该项目是完全独立的,我不需要任何目前在客户端的服务器上 我使用PHP5.3和PDO for mysql连接开发了这个项目。当我访问客户端的服务器时,发现他们的安装非常旧,上次升级是在2008年(是的,说真的)。他们有Apache2.0和PHP5.2,这是在没有PDO的情况下配置/编译的,并且具有最少的所有功能 我确实有根访问服务器的权限,但我不能盲目地

我为一个客户机完成了一个php/mysql项目,昨天准备将其部署到客户机上,但很快就失败了。老实说,这是我的错,我没有做足够的检查之前,我开始-但该项目是完全独立的,我不需要任何目前在客户端的服务器上

我使用PHP5.3和PDO for mysql连接开发了这个项目。当我访问客户端的服务器时,发现他们的安装非常旧,上次升级是在2008年(是的,说真的)。他们有Apache2.0和PHP5.2,这是在没有PDO的情况下配置/编译的,并且具有最少的所有功能

我确实有根访问服务器的权限,但我不能盲目地开始升级。他们有一个完整的现场站点,在该服务器上有现场购物车等,任何php的一般升级都需要彻底的测试。因此,我正在寻找使用单独安装的PHP5.3来运行新项目的方法,我从包含所有必需内容的源代码中编译了PHP5.3,并将其安装到单独的目录(/opt/php53)中

我正在考虑在服务器上启用fastcgi,然后在单独安装时使用它来运行php。如果我在安装我的项目的apache
中执行此操作,它应该只影响该目录,并且应该保持其他目录不变。事情变得更加复杂,因为我没有任何类型的测试服务器,在那里我可以播放/测试配置-我必须直接在实时服务器上工作


我想知道这个FASCGI方法是否有效,也许还有其他的选择我应该考虑。

< P>您可以尝试在FASCGI上使用不同的端口来处理各种PHP版本。
另一种方法:

我做了一些进一步的挖掘/实验(利用我在英国,客户及其客户在美国的事实,所以那里仍然是夜晚)。下面的设置似乎已经起作用了——它使用php cgi而不使用fastcgi——我仍然获得了很好的响应时间

1) 在ApacheHttpd.conf文件中保留几乎所有内容,包括现有的libphp5.conf,以便利用现有的5.2安装

2) 将PHP5.3安装到一个单独的目录中——在我的例子中是/opt/php53

3) 在httpd.conf中,添加以下内容(或确保它已经存在)

5) 重新启动apache:
/etc/init.d/httpd Restart

在此之后,我将一个带有
的文件放入web服务器的根目录和
newapp
目录中。从其生成的服务器的根目录执行(除其他外):

newapp
目录执行时,会产生:

PHP Version 5.3.28

Build Date  Feb 13 2014 17:00:43 
Server API  CGI/FastCGI 

这正是我想要的。

我不想对现有的5.2版使用fastcgi—我想让现有的apache模块与php 5.2和现有站点保持一致—并且只在我的子目录中使用fastcgi for 5.3。为此类遭遇找到的其他资源:
#!/bin/bash
PHP_CGI=/opt/php53/bin/php-cgi
PHP_FCGI_CHILDREN=5
PHP_FCGI_MAX_REQUESTS=1000
### no editing below ###
export PHP_FCGI_CHILDREN
export PHP_FCGI_MAX_REQUESTS
exec $PHP_CGI
PHP Version 5.2.5

Build Date  Dec 11 2008 19:04:47
Server API  Apache 2.0 Handler
PHP Version 5.3.28

Build Date  Feb 13 2014 17:00:43 
Server API  CGI/FastCGI