перевод worldpress на https

мигрировал свой сайт с http: на https: задача оказалась не очень тривиальной так что опишу все здесь…

вводное: у меня виртуальный хостинг, а у моего хостера неведомый(!) синтаксис в .httpaccess и на мои вопросы в поддержку, когда я хотел заблокировать доступ IE6 к сайту, после невозможности с делать что-то своими силами мне давали пару не рабочих вариантов а потом говорили ну вы сами там что-то поменяйте… проблему с блокировкой ie6 и всех китайских ip решил, но без надобности лезть в .httpaccess не хочу. я это пишу к тому что многие советы о переводе сайтов на worldpress c http на https содержат инструкции для .httpaccess

1. подключил сайт к CloudFlare делегировал dns и поставил его родной плагин со статистикой облака и какой то оптимизацией… не очень понимаю зачем нужен плагин ну сделал все по инструкции которые есть в сети и их много. Никакие другие плагины не ставил.
2. ждал примерно сутки, когда сменятся dns, и что-то начало грузится по https://мой-сайт
3. в wp-config.php вставил вот этот кусок кода в самое начало

/* SSL Settings */

define('FORCE_SSL_ADMIN', true);

/* Turn HTTPS 'on' if HTTP_X_FORWARDED_PROTO matches 'https' */

if ( (isset($_SERVER['HTTP_X_FORWARDED_PORT'] ) && ( '443' == $_SERVER['HTTP_X_FORWARDED_PORT'] ))
|| (isset($_SERVER['HTTP_CF_VISITOR']) && $_SERVER['HTTP_CF_VISITOR'] == '{"scheme":"https"}')) {
$_SERVER['HTTPS'] = 'on';
}

4. идем в админку сайта настройки->общие
и меняем в полях
Адрес WordPress (URL)
Адрес сайта (URL)
с http://мой-сайт на https://мой-сайт

если что-то сделать неправильно в пункте 3 то после замены Адрес WordPress (URL) отваливается админка и чтобы вернуть ее в phpMyAdmin в таблице wp_options исправлять поле siteurl http://мой-сайт вместо https://мой-сайт

5. CSS

в style.css дочерней темы (если вы не рисовали тему пропустить) изменил строчку

@import url(«http//мой-сайт/wp-content/themes/имя_дочерней_темы/style.css»);
на
@import url(«//мой-сайт/wp-content/themes/имя_дочерней_темы/style.css»);

больше ошибок у меня не было но судя потому что пишут в интернетах с CSS бывают проблемы со ссылками на внешние картинки

замечание: для полной перезагрузки сайта со всеми картинками/CSS/… нажимать Control-F5 а не просто F5 который перегружает только текст.

6. robots.txt

у меня в robots.txt был указан адрес без протокола «Host: attar.ru» ничего не менял … если протокол явно прописан сменить его

позднее добавления:

7. в .httpaccess все таки пришлось залезть для того чтобы сделать явную переадресацию с http:// на https://, при наборе адречса сайта без явного указания протокола загружалась https:// версия, а вот если явно указать http:// то она и загружалась… поскольку у меня неведомый синтаксис в .httpaccess то методом перебора нашел вариант который работал у меня.

Добавить комментарий