下面以 CentOS 7 / 8 为例,说明 Apache + PHP 的常见配置方式(最常用、最稳定)。
sudo yum install httpd -y
sudo systemctl start httpd
sudo systemctl enable httpd
验证:
systemctl status httpd
sudo yum install epel-release -y
sudo yum install https://rpms.remirepo.net/enterprise/remi-release-7.rpm -y
sudo yum install yum-utils -y
sudo yum-config-manager --enable remi-php74
sudo yum install php php-cli php-common php-mysqlnd php-gd php-mbstring php-xml -y
sudo dnf install php php-cli php-common php-mysqlnd php-gd php-mbstring php-xml -y
Apache 通常自动加载:
httpd -M | grep php
应看到类似:
php7_module (shared)
创建测试文件:
echo "<?php phpinfo(); ?>" > /var/www/html/info.php
浏览器访问:
http://服务器IP/info.php
能看到 PHP 信息页即成功。
vi /etc/php.ini
常用参数:
upload_max_filesize = 64M
post_max_size = 64M
date.timezone = Asia/Shanghai
修改后重启 Apache:
systemctl restart httpd
vi /etc/httpd/conf.d/test.conf
<VirtualHost *:80>
ServerName test.example.com
DocumentRoot /var/www/test
<Directory /var/www/test>
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
创建目录:
mkdir -p /var/www/test
firewall-cmd --permanent --add-service=http
firewall-cmd --reload
✅ 页面直接显示 PHP 代码
✅ 403 Forbidden
chown -R apache:apache /var/www
chmod -R 755 /var/www
如果你用的是 CentOS 9 / Stream、PHP 8.x、或想用 PHP-FPM,可以告诉我,我给你对应方案。