在CentOS上安装PHP-FPM(FastCGI Process Manager)通常涉及以下几个步骤。以下是一个基本的指南,假设你使用的是CentOS 7或CentOS 8。
首先,确保你的系统是最新的:
sudo yum update -y
EPEL(Extra Packages for Enterprise Linux)仓库提供了许多额外的软件包,包括PHP-FPM。
sudo yum install epel-release -y
你可以选择安装PHP及其相关模块。以下是一个基本的PHP安装示例:
sudo yum install php php-fpm -y
如果你需要更多的PHP模块,可以使用以下命令安装:
sudo yum install php-mysqlnd php-gd php-mbstring php-xml php-pear php-bcmath -y
安装完成后,你需要配置PHP-FPM。默认情况下,PHP-FPM的配置文件位于/etc/php-fpm.d/www.conf。
你可以编辑这个文件来配置PHP-FPM:
sudo vi /etc/php-fpm.d/www.conf
一些常见的配置选项包括:
user 和 group:指定运行PHP-FPM进程的用户和组。listen:指定PHP-FPM监听的地址和端口。pm:指定进程管理方式,常用的有dynamic、static和ondemand。例如,将user和group设置为apache,并让PHP-FPM监听Unix套接字:
user = apache
group = apache
listen = /run/php-fpm/www.sock
启动PHP-FPM服务并设置开机自启:
sudo systemctl start php-fpm
sudo systemctl enable php-fpm
如果你使用Nginx作为Web服务器,你需要配置Nginx以使用PHP-FPM处理PHP请求。以下是一个基本的Nginx配置示例:
server {
listen 80;
server_name example.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;
}
}
如果你使用Apache,你需要启用mod_proxy_fcgi模块并配置虚拟主机:
sudo a2enmod proxy_fcgi setenvif
sudo systemctl restart httpd
然后在Apache配置文件中添加以下内容:
<VirtualHost *:80>
ServerName example.com
DocumentRoot /var/www/html
<FilesMatch \.php$>
SetHandler "proxy:fcgi://unix:/run/php-fpm/www.sock"
</FilesMatch>
</VirtualHost>
最后,重启Nginx或Apache以应用配置更改:
sudo systemctl restart nginx
# 或者
sudo systemctl restart httpd
现在,你应该能够在CentOS上成功安装并运行PHP-FPM了。