溫馨提示×

CentOS Nginx如何實現動靜分離

小樊
108
2025-02-08 11:30:05
欄目: 智能運維

在CentOS上配置Nginx實現動靜分離,通常涉及將靜態內容(如HTML、CSS、JavaScript文件)和動態內容(如PHP、Python等腳本處理的結果)分別處理,以提高性能和可擴展性。以下是一個基本的步驟指南:

1. 安裝Nginx

首先,確保你的CentOS系統上已經安裝了Nginx。如果沒有安裝,可以使用以下命令進行安裝:

sudo yum install epel-release
sudo yum install nginx

2. 配置Nginx

編輯Nginx的配置文件,通常位于 /etc/nginx/nginx.conf/etc/nginx/conf.d/ 目錄下的某個文件。以下是一個示例配置,假設我們將靜態內容放在 /var/www/html 目錄,動態內容通過PHP處理,并且使用FastCGI來處理PHP請求。

server {
    listen 80;
    server_name example.com;

    # 靜態內容處理
    location /static/ {
        alias /var/www/html/;
        expires 30d;
    }

    # PHP處理
    location ~ \.php$ {
        fastcgi_pass 127.0.0.1:9000;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }

    # 其他請求處理
    location / {
        try_files $uri $uri/ @rewrite;
    }

    # 重寫規則
    location @rewrite {
        rewrite ^/(.*)$ /index.php?$1 last;
    }
}

3. 配置PHP-FPM

確保你已經安裝了PHP-FPM,并且它正在運行。如果沒有安裝,可以使用以下命令進行安裝:

sudo yum install php-fpm
sudo systemctl start php-fpm
sudo systemctl enable php-fpm

編輯PHP-FPM的配置文件,通常位于 /etc/php-fpm.d/www.conf/etc/php-fpm.conf。確保監聽端口或Unix socket與Nginx配置中的 fastcgi_pass 一致。

[www]
listen = 127.0.0.1:9000
listen.owner = nginx
listen.group = nginx

4. 重啟服務

保存所有配置文件后,重啟Nginx和PHP-FPM服務以應用更改:

sudo systemctl restart nginx
sudo systemctl restart php-fpm

5. 測試配置

打開瀏覽器,訪問你的服務器IP地址或域名,確保靜態內容能夠正確加載,動態內容能夠通過PHP處理并返回正確的結果。

總結

通過上述步驟,你可以在CentOS上配置Nginx實現動靜分離。靜態內容通過Nginx直接處理,而動態內容則通過PHP-FPM處理。這種架構可以提高網站的性能和可擴展性。

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