2017-05-31 205 views
1

我在.htaccess下面的代碼:重定向(重寫規則)

RewriteCond %{HTTPS} off 
RewriteRule^https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] 

RewriteRule ^test/ test.php [NC,L] 

當我打電話http://example.com/test/,將瀏覽器重定向我地址:https://example.com/test.php/,但隨後的瀏覽器顯示我的錯誤。我不想重定向到test.php

+0

'https:// example.com/test.php /' - 只需確認,重定向的URL末尾是否有斜槓?你想要發生什麼?你有什麼錯誤? – MrWhite

+0

我希望所有http重定向到https而不更改相關網址,現在它將測試更改爲test.php –

回答

1

試着在你.htaccess文件的頂部禁用MultiViews

Options -MultiViews 

如果MultiViews啓用然後mod_negotiation模塊很可能重寫test.php的mod_rewrite得到重定向到HTTPS。所以,mod_rewrite然後結束重定向到test.php

+1

謝謝你!我嘗試通過谷歌查找文件,但無法找到,但這是解決方案!謝謝 –

+0

不客氣。 Apache文檔:https://httpd.apache.org/docs/2.4/content-negotiation.html#multiviews – MrWhite