На время проведения реконструкции сайт переведён в режим "ТОЛЬКО ЧТЕНИЕ" (Read only). Приносим свои извинения!
MaxHub
Полезности по Maxsite CMS

Почему не отображаются стили после установки https?

Вопросы-ответы / 30 января 2016

Доброго времени суток. Решил создать новый сайт. Дали ssl. Установил плагин HTTPS, включил - всё равно стили не отображаются. Может кто ещё столкнётся с этим.

Адрес моего сайта - bloghub.ru

Что посоветуете?

Комментариев: 22
  1. Сергей, у тебя в консоле Chrome показывается сообщение:

    Mixed Content: The page at 'https://bloghub.ru/' was loaded over HTTPS, but requested an insecure stylesheet 'http://bloghub.ru/application/maxsite/templates/default/assets/css/style.css'. This request has been blocked; the content must be served over HTTPS.

    В общем, не удивительно, что стили не работают. У файлов неправильно формируется адрес. Точнее протокол почему-то остаётся http при формировании канонического адреса сайта.

    Такое иногда бывает, если неверно настроен сервер nginx - он неправильно передаёт заголовки Apache и поэтому движок не может подхватить https протокол.

    Обычно я не пользуюсь плагином HTTPS, а настраиваю редирект в htaccess (так запросы быстрее обрабатываются и экономнее ресурсы потребляются, т.к. обработка запроса не доходит до движка) и поэтому могу дать совет только для этого случая. В частности:

    1. В корневом файле .htaccess нужно настроить редирект всех http-запросов на https таким образом:

    # Redirect to HTTPS
    RewriteCond %{HTTPS} off
    RewriteCond %{HTTP:X-Forwarded-Proto} !https
    RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

    2. В начале файла /application/config/mso_config.php вставить код:

    # для корректной работы с HTTPS
    if(
     (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] != "") || 
     (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https')
    )
    {
     $_SERVER['HTTPS'] = 'on';
     $_SERVER['REQUEST_SCHEME'] = 'https';
     $config['base_url'] = str_replace("http:", "https:", $config['base_url']);
    }

    После этого обычно сайт начинает нормально подхватывать HTTPS и стили нормально отображаются.

  2. Работает shock

    Спасибо огромное excaim

  3. Спасибо!

  4. Здравствуйте.

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

  5. Я конечно не обсуждаю правила ресурса, просто высказываю своё мнение. По моему прятать информацию под скрытый контент несколько странно для "службы заботы"

    Vlad62, для сайта это единственный способ вовлечь посетителей в жизнь ресурса. А то берут и даже спасибо лень сказать...

  6. Есть такое.

    Пока ждал, добавил в config.php HTTP_X_FORWARDED_PROTO. Заработало. Спасибо.

    Я не силен в сайтостроительстве. Может все же лучше в mso_config.php это прописать? Иди лучше не трогать раз работает?

  7. Для меня очень интересная тема. Спасибо

  8. NGINX + Apache на хостинге, нужен обязательно https.

    Все перепробовал что смог найти, в итоге сделал так http://forum.max-3000.com/viewtopic.php?t=4292.

    https сайт заработал ссылки внутренние верные.

    Но с админкой никак не получается, при настройке сайта в админке выдает

    "Основные настройки

    Здесь вы можете указать основные настройки сайта.

    Achtung! XSS attack! No REFERER!"

    и настройка не меняется.

    в фаерфоксе выдает "предупреждение системы защиты"

    "Информация, введенная вами на этой странице, будет отправлена по незащищенному соединению и может быть прочитана третьей стороной"

    Следовательно снова какая то часть идет по http, наверное из-за этого и возникает ошибка.

    Может быть кто-то сталкивался с такой ошибкой?

  9. P.S.

    https://www.test.net/admin/options при настройке в админке

    по F12 хром показывает

    Mixed Content: The page at 'https://www.test.net/admin/options' was loaded over a secure connection, but contains a form which targets an insecure endpoint 'http://www.test.net/admin/options'. This endpoint should be made available over a secure connection.

    получается не все по https идет и Maxsite воспринимает как атаку и блокирует.

    вот тут получается не сменился адрес на https

  10. Илья Земсков, такая же проблема, никак не могу разобраться прошу помощи.

    1. В корневом файле .htaccess

    # Redirect to HTTPS
    RewriteCond %{HTTPS} off
    RewriteCond %{HTTP:X-Forwarded-Proto} !https
    RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

    2. application/config/config.php

    $config['base_url'] = ((isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == "on") ? "https" : "http");

    заменил на

    $config['base_url'] = ((isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == "on" ||

    isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https') ? "https" : "http");

    http://forum.max-3000.com/viewtopic.php?t=4292. - брал тут

    Сайт заработал все ссылки https внутри страницы тоже, но с админкой проблема, часть ссылок осталась по http.

    https://www.test.ru/admin/options/

    выдает ошибку при изменении настроек в админке

    "Здесь вы можете указать основные настройки сайта.

    Achtung! XSS attack! No REFERER!"

    ссылка внутри страницы на форму по http

    очень нужна в админке https, помогите пожалуйста.

  11. Илья Земсков, такая же проблема, никак не могу разобраться прошу помощи.

    Саша, в моём первом комментарии в этой ветке указан рабочий код, попробовали его? Если нет, то без просмотра вашего сайта затрудняюсь сказать что и как.

  12. Илья огромное Вам спасибо!

    Четко все заработало, понимаю что частный случай, NGINX+apache настроен криво на хостинге.

    На других хостингах (у REG.RU такая же связка) и на впс несколько раз ставил MS без проблем.

  13. Проблема с картинками, попробую открыть хайд.

  14. Если тут помогают овощам, то я попробую обратиться) Я просто чудом устроился помощником сисадмина и у меня та же проблема: битрикс не показывает стили после того как подключил ssl. Я пока не вижу закрытого решения, но если тут и вправду готовы вот так за комментарии и активную жизнь на ресурсе(которая надеюсь меня подтянет на уровень повыше), то я готов проводить тут вечера и ночи)))

  15. Shutivets, но тут не о битрикс говорят, а о совсем иной системе управления сайтом. Но почерпнуть знаний тут можно)

  16. Статья интересная! НО проблему решить до конца не могу. Код дает частичное решение проблемы(( Или стили слетают или в админку сложно войти grrr

  17. А вообщем получается или зеленый замок появляется, но при этом стили слетают...либо все нормально, но замка нет((

  18. Спасибо!

  19. Спасибо команде проекта, я понял как оставлять длинные, полезные для сообщества движка комментарии и после этого ваше решение мне помогло! Буду и дальше комментировать и наполнять сайт полезным контентом просто так.

  20. Похожая проблема на сайте, решил загуглить, вроде нашел ответ, но тут нужна активность, а проблема ждут. Кто может написать какой ответ. Очень надо.

  21. Благодарю!

  22. Пытаюсь на Денвере сделать попытку обновления с версии 0.77 до последней (сам сайт на хостинге по https отлично работает). И не могу в админку пробиться - Fatal error: Call to undefined function openssl_cipher_iv_length() in Z:\home\сайт\www\подкаталог\application\maxsite\common\common.php on line 4758 сразу после ввода логина-пароля и нажатия enter. Ни у кого не случалось похожего?