書面方式排列,我們有以下.htaccess
配置:阿帕奇非WWW到www不好再對URL
RewriteEngine on
allow from all
# if a directory or a file exists, use it directly
RewriteCond %{REQUEST_FILENAME} !-f
# otherwise forward it to index.php
RewriteRule . index.php
RewriteCond %{HTTP_HOST} ^domain1\.domain2\.com$ [OR]
RewriteCond %{HTTP_HOST} ^www\.domain1\.domain2\.com$
RewriteRule ^(.*)$ "http\:\/\/www\.domain1\.com\/$1" [R=301,L]
RewriteCond %{HTTP_HOST} ^domain1.com$
RewriteRule ^/?$ "http\:\/\/www\.domain1\.com\/" [R=301,L]
之間的其他事情,我們希望所有非www網址重定向到帶有www的人。
一切工作正常,除了網頁,網址是這樣的:
index?Form%5bplace%5d=Caribbean&Form%5bdestination%5d=Virgin+Islands&Form%5btype%5d=A
當我們不帶www輸入URL我們重定向使用下列URL結束:
index?Form%255bplace%255d=Caribbean&Form%255bdestination%255d=Virgin+Islands&Form%255btype%255d=A
由於無法識別,這給出了404錯誤。
任何想法如何避免這種情況?
嗨,它仍然被轉換爲%255D – german
嘗試使用其他瀏覽器。 – anubhava
嗨,在鉻和Safari瀏覽器不起作用。但在Firefox中,它工作正常。這是在我實現你的建議代碼之前發生的。它在每個瀏覽器中的工作方式有多不同? – german