在CentOS上配置Apache2以支持PHP,您需要遵循以下步骤:
安装EPEL仓库: 首先,确保您的系统已更新到最新版本。然后,安装EPEL(Extra Packages for Enterprise Linux)仓库,以便能够安装PHP及其相关模块。
sudo yum update
sudo yum install epel-release
安装Apache: 如果尚未安装Apache,请使用以下命令安装:
sudo yum install httpd
启动Apache服务并设置开机启动:
sudo systemctl start httpd
sudo systemctl enable httpd
安装PHP: 使用以下命令安装PHP及其相关模块:
sudo yum install php php-mysqlnd php-pdo php-gd php-mbstring php-xml
这将安装PHP以及一些常用的扩展模块。
配置Apache以支持PHP:
编辑Apache的主配置文件/etc/httpd/conf/httpd.conf
,确保以下行没有被注释掉(删除行首的#
字符):
LoadModule php_module modules/libphp.so
AddHandler php-script .php
AddType application/x-httpd-php .php
如果您的PHP文件存储在特定的目录中,例如/var/www/html/php
,您还需要在Apache配置文件中添加以下内容:
<Directory "/var/www/html/php">
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
重启Apache服务以应用更改:
sudo systemctl restart httpd
测试PHP配置:
在/var/www/html
目录下创建一个名为info.php
的文件,输入以下内容:
<?php
phpinfo();
?>
保存文件并在浏览器中访问http://your_server_ip/info.php
。您应该看到PHP信息页面,这表明Apache已成功配置为支持PHP。
(可选)配置PHP-FPM(FastCGI Process Manager): 如果您打算使用PHP-FPM来处理PHP请求,可以按照以下步骤操作:
安装PHP-FPM:
sudo yum install php-fpm
启动PHP-FPM服务并设置开机启动:
sudo systemctl start php-fpm
sudo systemctl enable php-fpm
修改Apache配置文件/etc/httpd/conf/httpd.conf
,添加以下内容:
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so
<FilesMatch \.php$>
SetHandler "proxy:fcgi://localhost:9000"
</FilesMatch>
重启Apache服务以应用更改:
sudo systemctl restart httpd
修改PHP-FPM配置文件(通常位于/etc/php-fpm.d/www.conf
),将listen
指令更改为:
listen = /run/php-fpm/www.sock
重启PHP-FPM服务以应用更改:
sudo systemctl restart php-fpm
现在,您已经成功在CentOS上配置了Apache2以支持PHP。