在CentOS上配置Apache2与PHP-FPM,可以按照以下步骤进行:
首先,确保你的系统是最新的,并安装Apache和PHP-FPM所需的软件包。
sudo yum update -y
sudo yum install -y httpd mod_fcgid php-fpm php-mysqlnd
启动Apache服务并设置开机自启。
sudo systemctl start httpd
sudo systemctl enable httpd
编辑PHP-FPM的配置文件 /etc/php-fpm.d/www.conf
,确保以下配置正确:
; Unix user/group of processes
user = apache
group = apache
; Listen on a TCP socket or Unix socket
listen = /run/php-fpm/www.sock
listen.owner = apache
listen.group = apache
; Set listen(2) backlog
listen.backlog = 65535
; Set permissions for socket
chmod = 0660
chown = apache:apache
; Security Limitations
php_admin_value[sendmail_path] = /usr/sbin/sendmail -t -i
php_admin_flag[safe_mode] = off
php_admin_value[memory_limit] = 32M
编辑Apache的主配置文件 /etc/httpd/conf/httpd.conf
或创建一个新的虚拟主机配置文件(例如 /etc/httpd/conf.d/myapp.conf
),并添加以下内容:
<VirtualHost *:80>
ServerName myapp.example.com
DocumentRoot /var/www/html/myapp
<Directory /var/www/html/myapp>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
<FilesMatch \.php$>
SetHandler "proxy:fcgi://localhost:9000"
</FilesMatch>
# Optional: Enable compression
AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css application/javascript
</VirtualHost>
启动PHP-FPM服务并设置开机自启。
sudo systemctl start php-fpm
sudo systemctl enable php-fpm
确保所有服务都已正确启动,并且没有错误日志。
sudo systemctl status httpd
sudo systemctl status php-fpm
查看Apache和PHP-FPM的日志文件以检查是否有任何错误:
/var/log/httpd/error_log
/var/log/php-fpm/error.log
创建一个简单的PHP文件(例如 /var/www/html/myapp/index.php
)来测试配置:
<?php
phpinfo();
?>
访问 http://myapp.example.com/index.php
,你应该能看到PHP信息页面。
通过以上步骤,你应该能够在CentOS上成功配置Apache2与PHP-FPM。如果有任何问题,请检查日志文件以获取更多信息。