2015-06-05 72 views
3

我有以下.htaccess文件的.htaccess,HTTPS重定向到的login.php

# BEGIN WordPress 
<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteBase/
RewriteRule ^index\.php$ - [L] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /index.php [L] 
RewriteCond %{HTTPS} off 
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI}/ [L,R=301] 
</IfModule> 
# END WordPress 

這是網站的link

託管在同一服務器上的另一個域需要重定向到login.php頁面,我不是開發人員,也不知道如何進行重定向。但我不得不停止被重定向到login.php。有沒有辦法通過.htaccess來實現?

我實際上只想在主頁和註冊頁面上啓用https,我可以使用HTTPS插件進行操作。當我啓用他們,正如我所說,他們去login.php文件...

重要提示:上面的鏈接/域沒有配置ssl,但需要重定向的其他域有它。但是他們在服務器上安裝了一個CA軟件包。

第二個重要注意事項:我實際上需要使用https傳遞數據來安全地使用fb-twitter-linkedin登錄按鈕。

我很樂意提供任何建議。謝謝你的時間!

編輯#1 - 上面提到的其他域只有這些對的.htaccess

RewriteEngine On 
RewriteCond %{HTTPS} off 
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] 

回答

1

你需要你的重定向規則來以前你的WordPress的路由規則。否則,路由首先發生,重寫任何你請求的URL,然後第二條規則重定向內部路由。

嘗試:

# BEGIN WordPress 
<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteBase/

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

RewriteRule ^index\.php$ - [L] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /index.php [L] 
</IfModule> 
# END WordPress 
+0

您好,感謝答案。我也嘗試過,但仍然沒有解決問題:/我添加了其他域的.htaccess(通常應該是唯一一個重定向)。 – Ekin

+0

@Ekin你清除了瀏覽器的緩存嗎? 301重定向是永久的,所以你的瀏覽器總是使用它的緩存。 –

+0

當然,我清除它。有一件事很奇怪......我無法在任何.htaccess文件中識別/login.php/的任何重定向代碼。你能告訴我,如果我錯了嗎? – Ekin