2016-04-22 4 views
0

Облицовка проблемы в перенаправлении URL. Urls являются следующие:Wordpress: перенаправить URL на https

www.mysite.com redirects to [http s://www.mysite.com] = OK. 
mysite.com displays Privacy Error = Failed. 
[http ://mysite.com] displays Privacy Error = Failed. 
[http s://mysite.com] displays Privacy Error = Failed. 
[http ://www.mysite.com] redirects to [http s://www.mysite.com] = OK. 

Примечание:

Я пытался Wordpress плагин HTTPS.

редактировать .htaccess

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

Редактировать файл сор-config.php тоже.

define('FORCE_SSL_ADMIN', true); 

Но не повезло. Может ли кто-нибудь понять, что там, где все происходит неправильно.

+1

Я имел эту проблему тоже когда-то, и оставил с нет решения. Я просто добавил Javascript, проверяя, '' document.location.protocol === 'http:' ', а затем установил его на' https: ' – VirginieLGB

+0

Да VirginieLBG прав. Хорошее решение ... – LoicTheAztec

+0

@VirginieLGB: Хороший, это было действительно полезно, но моя проблема была решена через .htaccess. – zed

ответ

0

Необходимо изменить хост в RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L] доменному имени, которое подтверждает ваш сертификат SSL.

Это звучит как ваш сертификат SSL будет проверять только www.example.com не example.com, поэтому, если вы сделаете запрос http://example.com вы будете перенаправлены на https://example.com, не проверяется вашим сертификатом ... и, таким образом, вы получите сообщение об ошибке.

Вместо этого, изменить правило:

RewriteRule (.*) https://www.example.com%{REQUEST_URI} [R=301,L]

Это также имеет дополнительное преимущество улучшения SEO.

PS: Кроме того, для целей отладки, используйте R=307, чтобы предотвратить перенаправление от кэширования в вашем браузере

+0

Спасибо, человек почти решил все проблемы, кроме 4-го. – zed

+0

т. Е. [http s: //mysite.com] отображает ошибку конфиденциальности = сбой. – zed

+0

Невозможно защитить https://example.com без получения нового сертификата, который проверяет example.com – edhurtig

0

Редактировать Ваш .htaccess

<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteBase/

RewriteCond %{ENV:HTTPS} !=on 
RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [R,L] 

# BEGIN WordPress 
RewriteRule ^index\.php$ - [L] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /index.php [L] 
</IfModule> 
Смежные вопросы