在Linux上部署PHP-FPM(FastCGI Process Manager)通常涉及以下几个步骤:
安装PHP和PHP-FPM: 首先,你需要安装PHP以及PHP-FPM。这可以通过包管理器来完成,例如在基于Debian的系统(如Ubuntu)上,你可以使用以下命令:
sudo apt update
sudo apt install php-fpm php-cli
在基于Red Hat的系统(如CentOS)上,你可以使用以下命令:
sudo yum install epel-release
sudo yum install php-fpm php-cli
配置PHP-FPM:
安装完成后,你需要配置PHP-FPM。配置文件通常位于/etc/php/{version}/fpm/
目录下,其中{version}
是你的PHP版本号。主要的配置文件是php-fpm.conf
,你可能需要编辑这个文件来设置进程管理参数、监听地址等。
例如,你可以编辑/etc/php/7.4/fpm/pool.d/www.conf
文件来配置监听地址和端口:
listen = /run/php/php7.4-fpm.sock
listen.owner = www-data
listen.group = www-data
或者,如果你希望通过TCP/IP监听:
listen = 127.0.0.1:9000
启动PHP-FPM服务: 配置完成后,你可以启动PHP-FPM服务,并设置它在系统启动时自动运行。
在基于Debian的系统上:
sudo systemctl start php7.4-fpm
sudo systemctl enable php7.4-fpm
在基于Red Hat的系统上:
sudo systemctl start php-fpm
sudo systemctl enable php-fpm
配置Web服务器: 你需要配置你的Web服务器(如Nginx或Apache)来使用PHP-FPM处理PHP文件。
对于Nginx,你需要在server
块中添加一个location
块来处理.php
文件:
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php7.4-fpm.sock; # 或者使用TCP/IP地址
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
对于Apache,你需要启用proxy_fcgi
模块,并配置一个ProxyPass
指令来将请求转发到PHP-FPM:
<FilesMatch \.php$>
SetHandler "proxy:fcgi://localhost:9000"
</FilesMatch>
测试配置:
最后,你应该测试你的配置是否正确。创建一个简单的PHP文件(例如info.php
),内容如下:
<?php
phpinfo();
将这个文件放在你的Web服务器的根目录下,然后在浏览器中访问它。如果一切配置正确,你应该能看到PHP的信息页面。
请注意,上述步骤中的路径和命令可能会根据你的Linux发行版和PHP版本有所不同。始终确保查阅与你使用的系统相对应的官方文档。