php-fpm在Ubuntu中的多实例部署方法
导读:在Ubuntu中部署PHP-FPM多实例,可以让你为不同的项目或应用提供独立的PHP环境。以下是一个基本的步骤指南: 1. 安装PHP-FPM 首先,确保你已经安装了PHP和PHP-FPM。你可以使用以下命令来安装: sudo apt up...
在Ubuntu中部署PHP-FPM多实例,可以让你为不同的项目或应用提供独立的PHP环境。以下是一个基本的步骤指南:
1. 安装PHP-FPM
首先,确保你已经安装了PHP和PHP-FPM。你可以使用以下命令来安装:
sudo apt update
sudo apt install php-fpm php-cli
2. 配置PHP-FPM池
PHP-FPM使用“池”(pool)的概念来管理不同的PHP环境。每个池可以有自己的配置文件。默认情况下,Ubuntu会创建一个默认的池。
创建新的池配置文件
你可以通过复制默认的池配置文件来创建一个新的池:
sudo cp /etc/php/7.4/fpm/pool.d/www.conf /etc/php/7.4/fpm/pool.d/myapp.conf
将myapp.conf替换为你想要的池名称。
编辑新的池配置文件
编辑新创建的池配置文件,例如:
sudo nano /etc/php/7.4/fpm/pool.d/myapp.conf
修改以下内容:
listen:指定监听的socket或端口。user和group:指定运行PHP-FPM进程的用户和组。pm:进程管理方式,常用的有dynamic、ondemand等。pm.max_children、pm.start_servers、pm.min_spare_servers、pm.max_spare_servers:根据你的需求调整这些参数。
例如:
[myapp]
listen = /run/php/php7.4-fpm-myapp.sock
user = www-data
group = www-data
pm = dynamic
pm.max_children = 5
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 3
3. 重启PHP-FPM服务
保存并关闭配置文件后,重启PHP-FPM服务以应用更改:
sudo systemctl restart php7.4-fpm
4. 配置Nginx或Apache
如果你使用Nginx或Apache作为Web服务器,你需要配置它们以使用新的PHP-FPM池。
Nginx配置示例
编辑Nginx的站点配置文件,例如:
sudo nano /etc/nginx/sites-available/myapp
添加以下内容:
server {
listen 80;
server_name myapp.example.com;
root /var/www/myapp;
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/php7.4-fpm-myapp.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
启用站点并重启Nginx:
sudo ln -s /etc/nginx/sites-available/myapp /etc/nginx/sites-enabled
sudo nginx -t
sudo systemctl restart nginx
Apache配置示例
编辑Apache的虚拟主机配置文件,例如:
sudo nano /etc/apache2/sites-available/myapp.conf
添加以下内容:
<
VirtualHost *:80>
ServerName myapp.example.com
DocumentRoot /var/www/myapp
<
Directory /var/www/myapp>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
<
/Directory>
<
FilesMatch \.php$>
SetHandler "proxy:unix:/run/php/php7.4-fpm-myapp.sock|fcgi://localhost"
<
/FilesMatch>
<
/VirtualHost>
启用站点并重启Apache:
sudo a2ensite myapp.conf
sudo systemctl restart apache2
5. 测试配置
最后,访问你的应用URL,确保一切正常运行。
通过以上步骤,你可以在Ubuntu中成功部署PHP-FPM多实例。每个实例可以有不同的配置和资源限制,从而更好地管理和优化你的应用环境。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: php-fpm在Ubuntu中的多实例部署方法
本文地址: https://pptw.com/jishu/758079.html
