一、確認 Nginx 安裝并啟用 rewrite 模塊
1. 如果你的云服務器上已經安裝了 Nginx,可以通過以下命令檢查是否安裝了 `http_rewrite_module`(rewrite 模塊):
???nginx?-V
? ?在輸出信息中查找 `–with-http_rewrite_module`,如果有則表示已安裝該模塊。如果沒有安裝,可能需要重新編譯安裝 Nginx 并加上這個模塊。
二、配置網站虛擬主機
1. 找到 Nginx 的網站配置文件,通常在 `/etc/nginx/sites-enabled/` 目錄下,文件名一般與你的域名相關。
2. 在配置文件的 `server` 塊中添加以下內容:
???location?/?{
???????try_files?$uri?$uri/?/index.php?$args;
???}
? ?這個配置的作用是嘗試匹配請求的 URL,如果找不到對應的文件或目錄,則將請求轉發到指定的 PHP 文件(假設你的網站是 PHP 程序,可根據實際情況調整)。
三、在網站根目錄創建偽靜態規則文件
1. 如果你的網站是使用常見的 CMS(如 wordpress、Drupal 等),可以在網站根目錄下創建一個 `.htaccess` 文件,并添加相應的偽靜態規則。但在 Nginx 環境下,這個文件不起作用,我們需要在 Nginx 的配置文件中直接添加規則。
2. 以 WordPress 為例,在 Nginx 配置文件中添加以下規則:
???location?/?{
???????try_files?$uri?$uri/?/index.php?$args;
???????if?(!-e?$request_filename){
???????????rewrite?^(.*)$?/index.php?s=$1?last;
???????}
???}
? ?這將把所有不存在的文件或目錄的請求轉發到 WordPress 的 `index.php` 文件,并傳遞請求的路徑作為參數。
四、重新加載 Nginx 配置
1. 保存配置文件后,通過以下命令重新加載 Nginx 配置,使偽靜態規則生效:
???nginx?-s?reload
這樣就完成了在云服務器上使用 Nginx 配置網站偽靜態的過程。不同的網站程序可能需要不同的偽靜態規則,你可以根據實際情況進行調整。