Nginx
在 Nginx 中為虛擬主機使用共享 404 頁面
我想在我的虛擬主機上使用一個共享的 404 頁面。以下是我的設置。
兩個站點,每個站點在 /sites-available/ 和 /sites-enabled/ 中都有自己的配置文件
- www.foo.com
- bar.foo.com
www 目錄設置為:
www/ foo.com/ foo.com/index.html bar.foo.com/ bar.foo.com/index.html shared/ shared/404.html
/sites-available 中的兩個配置文件都相同,除了根和伺服器名稱:
root /var/www/bar.foo.com; index index.html index.htm index.php; server_name bar.foo.com; location / { try_files $uri $uri/ /index.php; } error_page 404 /404.html; location = /404.html { root /var/www/shared; }
我試過上面的程式碼,也試過設置
error_page 404 /var/www/shared/404.html
(沒有下面的位置塊)。我還仔細檢查以確保我對 www 中的所有文件夾和文件的權限設置為 775。
當我嘗試訪問一個不存在的頁面時,Nginx 會為我嘗試訪問的虛擬主機的相應 index.php 提供服務。
誰能指出我做錯了什麼?謝謝!
這個怎麼樣?
location / { try_files $uri $uri/ =404; } error_page 404 /404.html; location = /404.html { root /var/www/shared; }