此代碼根據意見工作首先你的代碼不會趕上沒有wwww
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
# the first two lines above will catch all http request so , nothing will
# pass to the following
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
讓這樣的代碼:
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule^ https://www.yoursite.com%{REQUEST_URI} [L,R=301]
排除spacific頁面添加此
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} !^www\.
RewriteCond %{REQUEST_URI} !^/your/path/to/pages$
RewriteRule^ https://www.yoursite.com%{REQUEST_URI} [L,R=301]
注:清除瀏覽器緩存並對其進行測試。
更新:
RewriteCond %{HTTPS} on
RewriteCond %{THE_REQUEST} my-page [NC]
RewriteRule^ http://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
試試這個,這意味着捕獲任何請求包含然後https
&你的頁面強行進入http
這個問題被一次又一次地問。總而言之,要做的更好的事情就是修改你想重定向的原因,而不是實際上使你的服務不安全或被破壞。 – arkascha
@arkascha因爲在這個頁面我需要使用一個不適用於ssl – kb8
的外部部件是的,包括外部的東西是這種嘗試的通常原因。位不能通過重定向工作,瀏覽器將拒絕遵循這樣的重定向。您需要通過您的服務代理該資源。 – arkascha