2014-11-24 71 views
0

我使用的.htaccess,使我的Drupal站點的會員更新網頁的安全,但是當用戶瀏覽遠離我無法切換回普通的HTTP該頁面。這應該是安全的頁面是:問題和一些不安全

www.example.com/renew

我想一切使用HTTP,和我想下面的重定向來實現:

# Renewal page should be secure. Redirect. 
RewriteCond %{HTTPS} off 
RewriteRule ^renew$ https://www.example.com/renew [R,L] 

# If user leaves the Renewal page, make sure we're no longer secure. Redirect. 
RewriteCond %{HTTPS} on 
RewriteCond %{REQUEST_URI} !^renew$ 
RewriteRule (.*) http://www.example.com%{REQUEST_URI} [R,L] 

我得到了第一個重定向工作正常。當我將第二,不安全的重定向,它打破了第一重定向 - 火狐說,有一個重定向循環。

你能告訴我,我做錯了什麼嗎?提前致謝。

回答

0

%{REQUEST_URI}是一個變量,總是/開頭。由於這個原因,第二條規則的第二個條件將永遠是真實的,因爲%{REQUEST_URI}絕不等於^renew$。要解決這個問題,請將該條件更改爲:

RewriteCond %{REQUEST_URI} !^/renew$ 
+0

我知道這會很簡單。感謝您的幫助,Sumurai8。 – 3rik5 2014-11-24 18:48:59