centos

如何在CentOS上配置Apache2与PHP-FPM

小樊
45
2025-07-04 15:07:21
栏目: 编程语言

在CentOS上配置Apache2与PHP-FPM,可以按照以下步骤进行:

1. 安装必要的软件包

首先,确保你的系统是最新的,并安装Apache和PHP-FPM所需的软件包。

sudo yum update -y
sudo yum install -y httpd mod_fcgid php-fpm php-mysqlnd

2. 启动并启用Apache服务

启动Apache服务并设置开机自启。

sudo systemctl start httpd
sudo systemctl enable httpd

3. 配置PHP-FPM

编辑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

4. 配置Apache以使用PHP-FPM

编辑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>

5. 启动并启用PHP-FPM服务

启动PHP-FPM服务并设置开机自启。

sudo systemctl start php-fpm
sudo systemctl enable php-fpm

6. 检查配置

确保所有服务都已正确启动,并且没有错误日志。

sudo systemctl status httpd
sudo systemctl status php-fpm

查看Apache和PHP-FPM的日志文件以检查是否有任何错误:

7. 测试配置

创建一个简单的PHP文件(例如 /var/www/html/myapp/index.php)来测试配置:

<?php
phpinfo();
?>

访问 http://myapp.example.com/index.php,你应该能看到PHP信息页面。

通过以上步骤,你应该能够在CentOS上成功配置Apache2与PHP-FPM。如果有任何问题,请检查日志文件以获取更多信息。

0
看了该问题的人还看了