Перейти к публикации
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...

Не работают стили при https


soraexx
 Поделиться

Рекомендованные сообщения

здравствуйте. версия 1.5 такая проблема: сайт поковыряли (не я, и что делали незнаю), после этого при подключении через https сайт открывается без стилей., при http - все нормально. что может быть? сайт пол года в подключенным сертификатом https работал до этого нормально.

Ссылка на комментарий
Поделиться на других сайтах


11 minutes ago, lightmidnight said:

а можете скинуть код, который он показал во втором пункте? мне не видно, т.к я там не активный юзер http://prntscr.com/g6gikr

Ссылка на комментарий
Поделиться на других сайтах


У opencart много проблем а формированием https

 

Ссылка на комментарий
Поделиться на других сайтах

4 часа назад, soraexx сказал:

а можете скинуть код, который он показал во втором пункте? мне не видно, т.к я там не активный юзер http://prntscr.com/g6gikr

 

Мне тоже к сожалению 

Ссылка на комментарий
Поделиться на других сайтах


Обычно я не пользуюсь плагином 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'] == "on") || 
(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']);
}

Ссылка на комментарий
Поделиться на других сайтах


4 часа назад, soraexx сказал:

а можете скинуть код, который он показал во втором пункте? мне не видно, т.к я там не активный юзер http://prntscr.com/g6gikr

отпишитесь потом, помогло или нет

Ссылка на комментарий
Поделиться на других сайтах


1 час назад, issuesphc сказал:

Обычно я не пользуюсь плагином HTTPS, а настраиваю редирект в htaccess

Никакие редиректы не помогут, стили отваливаются из-за того, что в теге base ссылка с http и браузеры блокируют загрузку такого контента при заходе по https.

А в base ссылка с http потому, что ОК не предполагает из коробки, что https может использоваться сразу на всех страницах, предполагается, что он будет только на страницах с конфиденциальной информацией (вход и регистрация, аккаунт покупателя, оформление заказа).

Вариантов решения проблемы несколько. Самый простой и достаточно эффективный (поскольку справляется заодно и с в меру кривыми модулями) - просто вписать в конфигах везде ссылки с https. Вариант чуть посложнее (и менее эффективный для кривых модулей) - в /system/library/url.php в методе link установить дефолтное значение $secure вместо false - true (а для версии 1.5 это будет не $secure, а $connection и NONSSL заменить на SSL). И вариант, который должен помочь в случае наличия совсем кривых модулей - установить этот модуль:

https://opencartforum.com/files/file/3272-seo-fix-https/

 

 

1 час назад, issuesphc сказал:

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

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

Во-первых, в ОК нет такого файла (и даже таких директорий)! А во-вторых, что более важно, даже сам код, приведённый там, для ОК не актуален, ибо аналогичный уже есть в ОК, только base устанавливается иначе.

  • +1 2
Ссылка на комментарий
Поделиться на других сайтах


6 минут назад, Dotrox сказал:

Никакие редиректы не помогут, стили отваливаются из-за того, что в теге base ссылка с http и браузеры блокируют загрузку такого контента при заходе по https.

А в base ссылка с http потому, что ОК не предполагает из коробки, что https может использоваться сразу на всех страницах, предполагается, что он будет только на страницах с конфиденциальной информацией (вход и регистрация, аккаунт покупателя, оформление заказа).

Вариантов решения проблемы несколько. Самый простой и достаточно эффективный (поскольку справляется заодно и с в меру кривыми модулями) - просто вписать в конфигах везде ссылки с https. Вариант чуть посложнее (и менее эффективный для кривых модулей) - в /system/library/url.php в методе link установить дефолтное значение $secure вместо false - true (а для версии 1.5 это будет не $secure, а $connection и NONSSL заменить на SSL). И вариант, который должен помочь в случае наличия совсем кривых модулей - установить этот модуль:

https://opencartforum.com/files/file/3272-seo-fix-https/

 

 

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

Во-первых, в ОК нет такого файла (и даже таких директорий)! А во-вторых, что более важно, даже сам код, приведённый там, для ОК не актуален, ибо аналогичный уже есть в ОК, только base устанавливается иначе.

 

ну да, ты прав

Ссылка на комментарий
Поделиться на других сайтах


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

 

в config.php

заменить

// HTTPS
define('HTTPS_SERVER', 'http://site.com/');
define('HTTPS_IMAGE', 'http://site.com/');

на

// HTTPS
define('HTTPS_SERVER', 'https://site.com/');
define('HTTPS_IMAGE', 'https://site.com/');

 

в /admin/config.php

заменить

// HTTPS
define('HTTPS_SERVER', 'http://site.com/admin/');
define('HTTPS_CATALOG', 'http://site.com/');
define('HTTPS_IMAGE', 'http://site.com/image/');

на

// HTTPS
define('HTTPS_SERVER', 'https://site.com/admin/');
define('HTTPS_CATALOG', 'https://site.com/');
define('HTTPS_IMAGE', 'https://site.com/image/');

 

и в админке сайта включить использование SSL

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

 

 

 

Ссылка на комментарий
Поделиться на других сайтах


9 часов назад, Dotrox сказал:

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

 

 

Понял 

Ссылка на комментарий
Поделиться на других сайтах


Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас
 Поделиться

  • Сейчас на странице   0 пользователей

    • Нет пользователей, просматривающих эту страницу.
×
×
  • Создать...

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.