2015-06-17 4 views
1

У меня следующий код в моем файл .htaccess в в.ч. сайтаКак перенести WordPress форма HTTP на HTTPS

# 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] 
</IfModule> 
# END WordPress 

Я сделал все вещи нужно для WordPress сайта для работы в HTTPS теперь мой сайт открытие и в формате, то есть в HTTP и HTTPS, но если тип пользователя example.com он идет к HTTP не HTTPS так, чтобы решить эту проблему, я добавить несколько больше коды, чтобы решить эту проблему

RewriteEngine on 
RewriteCond %{HTTP_HOST} ^yoursite.com [NC,OR] 
RewriteCond %{HTTP_HOST} ^www.yoursite.com [NC] 
RewriteRule ^(.*)$ https://www.yoursite.com/$1 [L,R=301,NC] 

# 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] 
</IfModule> 
# END WordPress 

, но после добавления этого мой сайт, не открывая его, говорит: «ERR_TOO_MANY_REDIRECTS»

Как решить эту проблему, я хочу, чтобы пользователь, чтобы перейти непосредственно к протоколу HTTPS

ответ

1

Проблема заключается в том, что вы не проверять, если HTTPS используется, поэтому он просто постоянно говорит браузеру, чтобы перейти к https://www.yoursite.com/$1.

Вы можете использовать %{HTTPS}, чтобы проверить, использует ли запрос https.

RewriteEngine on 
RewriteCond %{HTTPS} !^on$ [NC] 
RewriteRule ^(.*)$ https://www.yoursite.com/$1 [L,R=301,NC] 
+0

Спасибо, что работает. –

+0

Извините, что так поздно принял ответ, в то время я был noob и не знал, как использовать SO. –

+0

@RaunakGupta Нет проблем. Лучше поздно, чем никогда. :) – Anonymous