我有一个 centos 6 vm 作为我的开发环境,并附带 php5.3.3 也就是说我使用 yum 来安装 php(yum install php)
我按照这些说明安装 php 5.4http://www.webtatic.com/packages/php54/
在命令行(php -v)中我有 5.4,但使用 apache 我仍然有 5.3(phpinfo())
我找了又找,但就是找不到可以指向 apache 的 5.4.so 文件。
我如何让 apache 使用 5.4 版本?
#>yum list installed | grep php
php54w.x86_64 5.4.19-1.w6 @webtatic
php54w-cli.x86_64 5.4.19-1.w6 @webtatic
php54w-common.x86_64 5.4.19-1.w6 @webtatic
php54w-devel.x86_64 5.4.19-1.w6 @webtatic
php54w-gd.x86_64 5.4.19-1.w6 @webtatic
php54w-mbstring.x86_64 5.4.19-1.w6 @webtatic
php54w-mysql.x86_64 5.4.19-1.w6 @webtatic
php54w-pdo.x86_64 5.4.19-1.w6 @webtatic
php54w-pear.noarch 1:1.9.4-7.w6 @webtatic
php54w-soap.x86_64 5.4.19-1.w6 @webtatic
在我的情况下,http.conf 中没有 php 配置,但所有 *.conf 文件都包含在 conf.d 文件夹中。conf.d 文件夹中有一个 php.conf,其中包含。
#
# PHP is an HTML-embedded scripting language which attempts to make it
# easy for developers to write dynamically generated webpages.
#
<IfModule !worker.c>
LoadModule php5_module modules/libphp5.so
</IfModule>
<IfModule worker.c>
LoadModule php5_module modules/libphp5-zts.so
</IfModule>
#
# Cause the PHP interpreter to handle files with a .php extension.
#
AddHandler php5-script .php
AddType text/html .php
#
# Add index.php to the list of files that will be served as directory
# indexes.
#
DirectoryIndex index.php
#
# Uncomment the following line to allow PHP to pretty-print .phps
# files as PHP source code:
#
#AddType application/x-httpd-php-source .phps
答案1
在您的 Apache2 配置(或 vhost 配置,取决于您的设置)中,有一个设置用于选择要使用的 PHP 版本。由于您使用 php 5.3 配置了 apache,因此您必须将其更改为新的 PHP 版本,如下所示;
ScriptAlias /php5.3 /usr/local/php5.3/bin
Action application/php5.3 /php5.3/php-cgi
AddType application/php5.3 .php