Intereting Posts
Перенаправление при доступе / регистрации при входе в систему remove_action: Исходная попытка не удалась, а попытка позже С грубым временем с add_image_size после перемещения сервера Пользовательское подключение к Facebook, регистрация ошибок / выход из системы Как предотвратить плагин, сбои установки темы в WordPress? Найдите «Дети страницы», затем «Echo it» как «Маркированный список ссылок» (меню) Как удалить все метабокс для персонализированного типа сообщений? Скрыть пользовательское значение метабокса из настраиваемых полей статическая страница с несколькими циклами разрывов после разбивки на страницы SFTP определяет в wp-config.php Вторая внутренняя вставка навигации Перетаскивание n Отправка сообщения о рассылке для нескольких пользовательских типов сообщений Сохранение значения пользовательского термина в базе данных в новой таблице фильтр the_content, пользовательский тип сообщения и wp_query Как добавить имя, фамилию и название компании в мою регистрационную форму

Обслуживание HTTP и HTTPS с одной установки

У меня установлена ​​WordPress, которая обслуживает контент через HTTP и HTTPS. URL-адрес сайта настроен как «http://www.example.com». Это работает для большинства ситуаций – если человек запрашивает страницу на странице https://www.example.com/page, страница подается через HTTPS.

Однако проблема, с которой я сталкиваюсь, заключается в том, что существует несколько функций шаблона WordPress, которые вызывают URL-адрес сайта (например, get_bloginfo ('stylesheet')), и когда они это делают, они включают в себя «http: //» в возвращаемом Результаты. Аналогично, изображения, вставленные в редактор WYSIWYG, имеют путь «http: //www.example.com …», жестко закодированный.

То, что я действительно хотел бы сделать, это найти способ определения URL-адреса базового сайта как «//www.example.com», который, мы надеемся, сделает все правильно. Тем не менее, поля admin в WordPress не поддерживают это.

Есть ли у кого-нибудь идеи, как это сделать?

Solutions Collecting From Web of "Обслуживание HTTP и HTTPS с одной установки"

Простое решение – использовать правила .htaccess.

 #Redirect HTTP to HTTPS RewriteCond %{HTTPS} off RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L] 

Если вы не хотите принуждать HTTPS (или перенаправлять все запросы без HTTPS), URL-адреса в сообщениях могут обрабатываться следующим образом:

 function content_ssl($content) { if (isset($_SERVER["HTTPS"])) $content = ereg_replace("http://" . $_SERVER["SERVER_NAME"], "https://" . $_SERVER["SERVER_NAME"], $content); return $content; } add_filter('the_content', 'content_ssl'); 

Сам WordPress обрабатывает соответствие протокола. Однако некоторые плагины этого не делают.