溫馨提示×

Ubuntu PHP-FPM如何管理多個站點

小樊
52
2025-08-13 16:10:18
欄目: 編程語言

在Ubuntu上使用PHP-FPM管理多個站點,可以通過配置Nginx或Apache作為Web服務器來實現。以下是使用Nginx和PHP-FPM管理多個站點的步驟:

  1. 安裝PHP-FPM:
sudo apt-get update
sudo apt-get install php-fpm
  1. 為每個站點創建一個單獨的目錄,例如:
sudo mkdir -p /var/www/site1.com/public_html
sudo mkdir -p /var/www/site2.com/public_html
  1. 更改站點目錄的所有權,以便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
  1. 為每個站點創建一個Nginx配置文件。在/etc/nginx/sites-available目錄下創建新文件,例如site1.comsite2.com。

  2. 編輯每個站點的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;
    }
}
  1. 創建到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/
  1. 檢查Nginx配置文件的語法是否正確:
sudo nginx -t
  1. 如果一切正常,重新加載Nginx以應用更改:
sudo systemctl reload nginx
  1. 重啟PHP-FPM服務以確保其使用新的配置:
sudo systemctl restart php7.4-fpm

現在,您已經成功配置了多個站點,每個站點都有自己的PHP-FPM池。如果需要為每個站點使用不同的PHP版本,只需為每個版本安裝PHP-FPM,并在Nginx配置文件中為每個站點指定相應的fastcgi_pass參數。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女