Перемикання установки MultiSite з HTTP на HTTPS


11

Я встановив MultiSite з набором URL як http://example.com , але тепер я хочу змусити всі запити перейти через HTTPS, тому я намагаюся змінити URL-адресу на https://example.com . Я пройшов базу даних і оновив усі значення siteurlта homeзначення, щоб мати https , але сайт все ще завантажується через HTTP, замість того, щоб перенаправлятись на HTTPS.

Я знаю, що я можу встановити деякі правила htaccess, але це схильне до помилок. У звичайних установках WordPress автоматично переспрямовує всі запити до канонічних URL-адрес, визначених у налаштуваннях siteurlта homeналаштуваннях, тому я припускаю, що і MultiSite робить це.

Відповіді:


2

Існують плагіни для встановлення сайту на SSL. Чому б не скористатися одним із них?

А у вас встановлений і активний сертифікат SSL?


Усі плагіни, які я бачив, - це встановлення певних сторінок для використання HTTPS, а не всього сайту. У звичайних установках WP звичайним методом використання цілого сайту HTTPS є встановлення значень siteurlта homeзначень. Навіть якщо були доступні деякі причини, є кілька причин, чому використання плагіна є поганою ідеєю, коли ви можете просто встановити значення конфігурації (безпека, продуктивність тощо). Крім того, я впевнений, що не має значення, є сертифікат SSL ще чи ні. WordPress не збирається перевіряти, коли він визначає, що таке канонічна URL-адреса.
Ян Данн

Правда і правда, мені було просто цікаво, у вас це вже було встановлено чи ні (безліч людей не знає, що вам потрібен SSL-серт, якщо ви дійсно хочете використовувати SSL, отже, Q). Я просто пам’ятав, що у мене був деякий час у SSL (не лише конкретні сторінки, а весь сайт, як ви цього хочете). Я знайду код.
Хіранті

Хм .. не вдалося знайти код, який я використовував тоді. Однак я знайшов це: prosauce.org/blog/2010/08/…
Хіранті

Я встановив Better WP Security з іншої причини, але виявляється, що він має можливість змусити всі запити сторінок (спереду та ззаду) переходити через SSL.
Ян Данн

1
Найкращим рішенням буде те, що не використовує плагін IMHO. Таким чином, кожен запит не повинен бути проаналізований плагіном.
Капітанблак

3

Я зіткнувся з тією ж проблемою: у мультисайті WordPress немає жодної опції чи налаштування, яке визначає, чи домен сайту - HTTP або HTTPS. Навіть після заміни всіх подій у базі даних відвідувач може все-таки зайти та перейти на сайт у HTTP, не перенаправляючись на HTTPS.

Наступне просте рішення працювало для мене: я додав це mod_rewriteправило до свого .htaccess-файлу, безпосередньо перед специфічними правилами перезапису WordPress.

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

Оскільки це правило не визначає конкретний домен, воно ідеально підходить для потреб багатомісного сайту WordPress.

Я знайшов це правило в наступній темі: /programming/4398951/force-ssl-https-using-htaccess-and-mod-rewrite


Цей тип розчину відмінний для мультисайту, який є протокольним гомогенізованим. Коли ви хочете мати суміш SSL та не-SSL-сайтів у багатоміській мережі, все ускладнюється. Дуже складний.
КК

Дійсно, мій контекст - це мережа, де я перемикав усі сайти на SSL одночасно.
Ману

Поставивши його перед певними правилами WordPress, це вирішило це для мене. Спасибі - це рішення знадобило мені час, щоб знайти.
bastelflp
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.