Apache-2.2
404頁面顯示頁面名稱
我的網站執行良好;執行 Ubuntu 和 Apache2 的 Google Cloud Platform VM。好吧,除了一件事;我無法讓 404 頁工作。我遵循了幾個指南並設法做了一些非常愚蠢的事情。
這是 404 的結果:
這是實際的 404 文件(的內容
/404.html
):<!doctype html> <head> <title>404</title> </head> <body> <h1>404 :(</h1> This page doesn't exist. Sorry! <br><br> You can <button onclick="history.back();">Go back</button>, jump to the <a href="/">Site root</a>, or the <a href="/kcp">KCP root</a>. </body>
我已經刪除了我能找到的每個
.htaccess
文件和每一ErrorDocument ...
行,試圖恢復預設行為。**更新:**找到錯誤的行,謝謝!
您看到的響應與這樣定義 404 一致
ErrorDocument
:ErrorDocument 404 "404.html"
通過將第二個參數括在引號中,您可以將“錯誤文件”定義為一個簡單的字元串。伺服器仍在響應 404 HTTP 狀態程式碼。
而它應該是這樣的:
ErrorDocument 404 /404.html
我已經刪除了我能找到的每一個
.htaccess
文件和每一ErrorDocument ...
行如果您有權訪問伺服器配置,那麼伺服器配置將是一個更常見的地方。在這種情況下,您需要重新啟動伺服器才能使任何更改生效。
或者,響應是記憶體的伺服器端/代理?
**更新:**如果您找不到設置的位置,那麼(作為一種解決方法)您應該能夠
ErrorDocument
正確重新定義.htaccess
,這應該覆蓋父.htaccess
文件或伺服器配置中的任何設置。(這是提供AllowOverride FileInfo
- 或更大 - 在伺服器配置中設置,首先允許設置ErrorDocument
in.htaccess
。)