Ubuntu PHP-FPM如何管理多个站点
在Ubuntu上使用PHP-FPM管理多个站点,可以通过配置Nginx或Apache作为Web服务器来实现。以下是使用Nginx和PHP-FPM管理多个站点的步骤:
- 安装PHP-FPM:
sudo apt-get update
sudo apt-get install php-fpm
- 为每个站点创建一个单独的目录,例如:
sudo mkdir -p /var/www/site1.com/public_html
sudo mkdir -p /var/www/site2.com/public_html
- 更改站点目录的所有权,以便Web服务器可以访问它们:
sudo chown -R www-data:www-data /var/www/site1.com/public_html
sudo chown -R www-data:www-data /var/www/site2.com/public_html
-
为每个站点创建一个Nginx配置文件。在
/etc/nginx/sites-available
目录下创建新文件,例如site1.com
和site2.com
。 -
编辑每个站点的Nginx配置文件。以下是一个示例配置:
对于site1.com
:
server {
listen 80;
server_name site1.com www.site1.com;
root /var/www/site1.com/public_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/php7.4-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
对于site2.com
:
server {
listen 80;
server_name site2.com www.site2.com;
root /var/www/site2.com/public_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/php7.4-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
- 创建到
sites-enabled
的符号链接,以启用站点配置:
sudo ln -s /etc/nginx/sites-available/site1.com /etc/nginx/sites-enabled/
sudo ln -s /etc/nginx/sites-available/site2.com /etc/nginx/sites-enabled/
- 检查Nginx配置文件的语法是否正确:
sudo nginx -t
- 如果一切正常,重新加载Nginx以应用更改:
sudo systemctl reload nginx
- 重启PHP-FPM服务以确保其使用新的配置:
sudo systemctl restart php7.4-fpm
现在,您已经成功配置了多个站点,每个站点都有自己的PHP-FPM池。如果需要为每个站点使用不同的PHP版本,只需为每个版本安装PHP-FPM,并在Nginx配置文件中为每个站点指定相应的fastcgi_pass
参数。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权请联系我们,一经查实立即删除!