2013-04-17 49 views
1

因此,我目前遇到的問題是我們的整個網站使用https進行索引。我們希望使用.htaccess重定向到http。問題是我們需要一些URI來繼續使用https,我不知道如何編寫URI的例外重定向從https到http,除了一些URI的

我知道如果我們的網站的功能如下www.example.com/account .PHP但我們的網址都是一樣www.example.com/index.php?l=account

# Turn SSL on for account 
RewriteCond %{HTTPS} off 
RewriteCond %{SCRIPT_FILENAME} \/account\.php [NC] 
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L] 

我怎樣才能解決這個問題,任何指導,將不勝感激。

謝謝

編輯!

因此,下面的代碼我有工作,但我想做一個更多的例外,我似乎無法工作,我也想根(index.php)只使用http。

我試着用...

RewriteCond %{REQUEST_URI} !^/index.php 

但這並沒有

# invoke rewrite engine 
RewriteEngine On 
RewriteBase/

RewriteCond %{https} off 
RewriteCond %{QUERY_STRING} !^l=product_detail 
RewriteCond %{QUERY_STRING} !^l=product_list 
RewriteCond %{QUERY_STRING} !^l=page_view 
RewriteRule ^(.*)$ https://%{HTTP_HOST}/development/$1 [R=301,L] 

感謝

回答

1

工作嘗試

RewriteCond %{HTTPS} on 
RewriteCond %{REQUEST_URI} !^/account.php 
RewriteCond %{QUERY_STRING} !^l=account 
RewriteRule ^(.*)$ http://%{HTTP_HOST}/$1 [R=301,L] 

RewriteCond %{HTTPS} off 
RewriteCond %{REQUEST_URI} ^/account.php [OR] 
RewriteCond %{QUERY_STRING} ^l=account 
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]