Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

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


soraexx

Recommended Posts

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

Надіслати
Поділитися на інших сайтах


11 minutes ago, lightmidnight said:

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

Надіслати
Поділитися на інших сайтах


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 користувачів

    • Ні користувачів, які переглядиють цю сторінку

×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.