2017-09-01 145 views
0

我認爲我的配置有誤,或者Apache配置錯誤。找不到頁面會重定向到404頁面 - 不會發出404代碼

如果你訪問這個頁面:

http://www.rgraph.net/blog/new-line-chart-trace-effect-using-the-clip-canvas-method.html

它重定向到404頁面,顯示404錯誤頁面的地址欄是這個地址:

https://www.rgraph.net/404.html

我敢肯定,這些Apache指令是應該責備的,因爲如果你轉到頁面的HTTPS版本,它應該像它應該那樣工作(顯示404頁面,同時在地址欄中保留原始地址)。就像這樣:

https://www.rgraph.net/blog/new-line-chart-trace-effect-using-the-clip-canvas-method.html

這裏的Apache指令,我認爲是錯誤的:

RewriteCond %{HTTP_HOST} ^www.rgraph.net$ 
RewriteCond %{HTTPS} off 
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L] 

它的作品如預期存在的地址。例如:

http://www.rgraph.net/blog/index.html

即正確處理重定向到頁面的HTTPS版本。

回答

0

我解決了它通過改變處理一切,但HTML文件,然後PHP(解析我的服務器上的HTML文件)處理這些文件的重定向。所以這個現在可以正確地顯示了404的消息,同時仍保留在地址欄中的地址:

http://www.rgraph.net/blog/new-line-chart-trace-effect-using-the-clip-canvas-method.html

下面是我現在使用修改Apache的配置:

RewriteCond %{HTTP_HOST} ^www.rgraph.net$ 
RewriteCond %{HTTPS} off 
RewriteCond %{REQUEST_URI} !(\.html)$ 
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]