我們有多個具有相同代碼的網站。問題是這是在Firefox,Chrome等正常工作,但它不在IE中工作。htaccess重寫條件在Internet Explorer中不工作
我的建議是Internet Explorer發送一個不同的/不正確的HTTP_HOST。但我不明白爲什麼。任何人都可以幫助我走向正確的方向嗎? 我已張貼下面
htaccess的文件中的代碼應該做的: 1.檢查請求的網站地圖 2. WWW重定向到http 3.如果網站不website.nl使用HTTP 4.如果網站是website.nl使用HTTPS 5.使用的所有要求request.php文件
RewriteEngine On
RewriteBase/
RewriteRule ^sitemap\.xml/?$ generate_sitemap.php [NC,L]
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
RewriteCond %{HTTP_HOST} !^(www\.)?website.nl$ [NC]
RewriteCond %{HTTP_HOST} ^$
RewriteRule ^(.*)$ http://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
RewriteCond %{HTTP_HOST} ^(www\.)?website.nl$ [NC]
RewriteCond %{HTTPS} !=on
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^((.|/)*)$ /request.php?path=$1 [QSA,L]
我發現它得到了無限循環。只在Internet Explorer中。它不斷連接到https://website.nl。所以我一直在執行角色https://%{HTTP_HOST}%{REQUEST_URI} [R = 301,L] –
找到了解決方法:必須將HTTPS!= on更改爲RewriteCond%{SERVER_PORT}!443 謝謝 –