配置CentOS上的PHP-FPM(FastCGI Process Manager)涉及几个步骤。以下是一个基本的指南,帮助你安装和配置PHP-FPM:
首先,确保你的系统是最新的:
sudo yum update -y
然后,安装PHP和PHP-FPM:
sudo yum install -y epel-release
sudo yum install -y php php-fpm
PHP-FPM的配置文件通常位于 /etc/php-fpm.d/www.conf。你可以编辑这个文件来配置PHP-FPM。
sudo vi /etc/php-fpm.d/www.conf
在 www.conf 文件中,你可以修改以下参数:
user 和 group:指定运行PHP-FPM进程的用户和组。listen:指定PHP-FPM监听的地址和端口。例如,/run/php-fpm/www.sock 或 127.0.0.1:9000。listen.owner 和 listen.group:指定监听套接字的所有者和组。pm:指定进程管理方式,常用的有 dynamic、static 和 ondemand。pm.max_children、pm.start_servers、pm.min_spare_servers 和 pm.max_spare_servers:用于控制进程池的大小。例如:
user = apache
group = apache
listen = /run/php-fpm/www.sock
listen.owner = apache
listen.group = apache
pm = dynamic
pm.max_children = 50
pm.start_servers = 5
pm.min_spare_servers = 5
pm.max_spare_servers = 35
启动PHP-FPM服务并设置开机自启:
sudo systemctl start php-fpm
sudo systemctl enable php-fpm
如果你使用的是Nginx,你需要配置Nginx以使用PHP-FPM处理PHP请求。
编辑Nginx配置文件(通常位于 /etc/nginx/nginx.conf 或 /etc/nginx/conf.d/default.conf):
sudo vi /etc/nginx/conf.d/default.conf
添加或修改以下内容:
server {
listen 80;
server_name your_domain.com;
root /var/www/html;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ =404;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php-fpm/www.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
如果你使用的是Apache,你需要启用 proxy_fcgi 模块并配置虚拟主机。
启用 proxy_fcgi 模块:
sudo a2enmod proxy_fcgi setenvif
编辑Apache配置文件(通常位于 /etc/httpd/conf/httpd.conf 或 /etc/httpd/conf.d/your_domain.conf):
sudo vi /etc/httpd/conf.d/your_domain.conf
添加或修改以下内容:
<VirtualHost *:80>
ServerName your_domain.com
DocumentRoot /var/www/html
<Directory /var/www/html>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
<FilesMatch \.php$>
SetHandler "proxy:fcgi://localhost:9000"
</FilesMatch>
</VirtualHost>
最后,重启Nginx或Apache以应用配置更改:
对于Nginx:
sudo systemctl restart nginx
对于Apache:
sudo systemctl restart httpd
现在,你的CentOS系统应该已经成功配置了PHP-FPM,并且可以通过Nginx或Apache处理PHP请求。