Отключение SSL / HTTPS для WordPress

14 февр. 2017 г., 18:57:06
Просмотры: 148K
Голосов: 13

Я установил WordPress и настроил базу данных.
Перехожу по адресу, страница установки есть, но CSS отсутствует.
Думаю: что-то не так, но может после завершения установки всё придет в норму.
Нет.
Затем я потратил некоторое время на поиск решений по проблеме "стили WordPress не работают" и т.д.
Я обнаружил, что все ссылки присутствуют в head страниц и указывают на правильные файлы, но они не загружаются.
WordPress пытается использовать защищенное соединение, но у меня нет SSL-сертификата или чего-то подобного, и я не думаю, что он мне нужен для этого. Это означает, что все ссылки на таблицы стилей и скрипты считаются ненадежными и блокируются.
Я изменил поиск в направлении отключения https / ssl, но ничего из найденного не работает.
Например, я пробовал добавлять данные в файл .htaccess (потерял ссылку на другой похожий вопрос на этом сайте)
Я пытался найти строки типа define( 'force_SSL', true ); в wp-config.php, но безуспешно (связанный вопрос). Я также пробовал добавлять эти строки (меняя их на false).

Спасибо за любую помощь.

Решение: Проблема была не в том, что я думал. Dataplicity (я работаю на Raspberry Pi) принудительно использует HTTPS, но поскольку WordPress не использовал HTTPS, "небезопасные" скрипты не загружались. Всё, что мне нужно было сделать - это включить HTTPS.

Я уверен, что ответы ниже помогли бы, если бы моя проблема была той, о которой я думал, и надеюсь, они помогут другим с такой же проблемой, которая была у меня изначально.

1
Комментарии

Вам следует использовать HTTPS, иначе это небезопасно, а также негативно влияет на SEO и скорость загрузки страницы. Также, не могли бы вы опубликовать ваш ответ в качестве ответа?

Tom J Nowell Tom J Nowell
28 авг. 2020 г. 17:51:11
Все ответы на вопрос 8
2
16

Проверьте ваш файл wp-config.php на наличие строк, таких как:

define( 'WP_SITEURL', 'https://example.com' );
define( 'WP_HOME',    'https://example.com' );

Также проверьте таблицу {prefix}_options в вашей базе данных:

SELECT * FROM wp_options WHERE option_name='siteurl' OR option_name='home';

...предполагая, что префикс вашей базы данных - wp_.

14 февр. 2017 г. 19:05:44
Комментарии

В моем файле wp-config.php нет таких строк, и я уже проверил таблицу options, где для обоих указано http://example.com

cCe.jbc cCe.jbc
14 февр. 2017 г. 19:11:16

Важно отметить, что если вы задаете константы, вам не нужно обновлять строки options для home и siteurl.

Brian Fegter Brian Fegter
14 февр. 2017 г. 20:17:57
1

Вы можете изменить файл .htaccess:

RewriteEngine On
RewriteCond %{HTTPS} on
RewriteRule ^ http://%{HTTP_HOST}%{REQUEST_URI} [R=301,L,NE]
14 февр. 2017 г. 23:48:34
Комментарии

Это было единственное решение, которое помогло мне на локальном сервере (xampp).

herrfischer herrfischer
6 сент. 2018 г. 12:42:11
0

Проблема: значения siteurl и home в базе данных обновлены на https, для исправления выполните следующее.

Чтобы быстро поднять сайт, добавьте следующие строки под существующими define-директивами в wp-config.php. Это переопределит значения из базы данных. Вы можете указать свой домен вместо localhost.

define( 'WP_SITEURL', 'http://localhost');
define( 'WP_HOME',    'http://localhost');

Исправление ссылок на https в базе данных

Перейдите в phpMyAdmin и выполните следующий запрос, затем отфильтруйте строки по https, как показано на изображении ниже. Если вы найдете записи home и siteurl с https, замените их на http.

SELECT * FROM wp_options

Фильтрация строк в phpMyAdmin

После удаления https из базы данных удалите следующие строки из wp-config.php и перезапустите Apache.

define( 'WP_SITEURL', 'http://localhost');
define( 'WP_HOME',    'http://localhost');

Ваш сайт должен заработать. Удачи!

25 янв. 2019 г. 01:07:44
2

Проверьте ваш файл wp-config.php на наличие строк типа:

define( 'WP_SITEURL', 'https://....' );
define( 'WP_HOME',    'https://.....' );

Если вы используете Linux-сервер, отредактируйте или создайте файл .htaccess в папке WordPress с следующим содержимым:

RewriteEngine On
RewriteCond %{HTTPS} on
RewriteRule ^ http://%{HTTP_HOST}%{REQUEST_URI} [R=301,L,NE]

Или лучший вариант:

Если WordPress уже установлен, перейдите в
Настройки>Общие>

Адрес WordPress (URL): измените с https на http
Адрес сайта (URL): сделайте то же самое здесь

16 февр. 2017 г. 23:01:28
Комментарии

Я решил проблему. Но проблема была не в том, что я думал. Вы можете увидеть решение в моём вопросе. Я думаю, что это и другие ответы здесь сработали бы, если бы проблема была в этом. Кстати, я не мог войти в админку (это было небезопасно), поэтому я не мог перейти в настройки.

cCe.jbc cCe.jbc
16 февр. 2017 г. 23:09:46

Отлично, @cCe.jbc :)

Arvind Singh Arvind Singh
16 февр. 2017 г. 23:10:56
1

Пожалуйста, проверьте URL вашего сайта, установленный в настройках. Это можно сделать через базу данных, как сказал Пэт, но если вы не так технически подкованы и у вас все еще есть доступ к админке WordPress, воспользуйтесь этим способом.

Перейдите в Настройки → Общие и проверьте параметры Адрес WordPress (URL) и Адрес сайта (URL). Они должны начинаться с http, а не с https.

20 февр. 2017 г. 00:44:20
Комментарии

Я решил проблему. Но проблема оказалась не той, о которой я думал. Вы можете увидеть решение в моём вопросе. Я думаю, что этот и другие ответы здесь сработали бы, если бы проблема была такой. Кстати, я не мог войти в админку (это было небезопасно), поэтому не мог перейти в настройки. Как я уже сказал Пату, я всё равно проверил базу данных.

cCe.jbc cCe.jbc
20 февр. 2017 г. 09:36:32
0

В моем файле wp-config.php есть:

define('WP_SITEURL', FLYWHEEL_DEFAULT_PROTOCOL . 'example.com');
define('WP_HOME', FLYWHEEL_DEFAULT_PROTOCOL . 'example.com');

Вам нужно найти эту строку:

define('FLYWHEEL_DEFAULT_PROTOCOL', 'https://');

И изменить https:// на http://

9 янв. 2019 г. 08:53:21
2

Следуя ответу Пэта. Вы можете попробовать добавить эти 2 строки в файл wp-config.php, чтобы проверить, исправят ли они ошибку:

define( 'WP_SITEURL', 'http://example.com' );
define( 'WP_HOME',    'http://example.com' );

Это заставит WordPress использовать HTTP-версию вашего домена. Если это решит проблему, значит, что-то в базе данных вызывает её.

Если у вас установлены плагины, убедитесь, что отключили их все, чтобы проверить, не вызывает ли один из них эту проблему.

Также рекомендую использовать режим инкогнито в Chrome или приватный режим в Firefox для посещения вашего сайта и проверки, продолжает ли WordPress использовать HTTPS.

Если в режиме инкогнито всё работает (WordPress правильно использует HTTP), попробуйте очистить кэш браузера. Я видел случаи, когда кэш браузера перенаправлял HTTP-трафик на HTTPS, даже если HTTPS не работал. Рекомендую убедиться, что проблема не в кэше.

14 февр. 2017 г. 20:16:01
Комментарии

Кажется, это ни на что не влияет, даже в режиме инкогнито/приватном. Вы имеете в виду плагины для браузера? Я раньше не использовал WordPress и ничего на нём не делал, кроме настройки и редактирования .htaccess и wp-config.php, чтобы попытаться решить эту проблему.

cCe.jbc cCe.jbc
14 февр. 2017 г. 20:38:54

@cCe.jbc Это действительно странно. Я имел в виду плагины WordPress, но похоже, у вас их пока нет. Как выглядит ваш файл .htaccess? Это стандартный htaccess или там есть какие-то изменения?

Базовый htaccess можно посмотреть здесь: https://codex.wordpress.org/htaccess

Viktor Viktor
15 февр. 2017 г. 15:57:42
0

В моем случае был плагин, который принудительно перенаправлял на https. Поэтому также проверьте, активен ли какой-либо плагин и перенаправляет ли запросы на https.

17 июл. 2020 г. 15:24:06