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

После перехода на ssl перестают работать подкатегории


 Поделиться

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

Ситуация такого рода.
Переименовав 

define('HTTP_SERVER', 'https://site.ru');

http ->https

Подкатегории начинают ловить дэфолтные ссылки /index.php?route=product/category&path=63, и перестают быть кликабельны.
Если я возвращаю обратно http вместо https все стает снова отлично работать кроме сертификата. (защищен не полностью)

SEO PRO стандартный из OcStroe 3.0.2

.htacces родной без изменений.

Скрины SEO PRO

 

Спойлер

1986284592_.thumb.jpg.4042032d27f7fa400c7784cd7ac96e44.jpg

Настройка PHP

 

Спойлер

1524304389_2.thumb.jpg.5ef3b5060c3ae9dec4d798388849cce8.jpg3.thumb.jpg.3966f13ccf6dc7ccb473995c7e9e207a.jpg4.thumb.jpg.f12e7a518363926ad565b84dcae0a412.jpg

 

Кэш SEO PRO чистил

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


2 минуты назад, Feldeshi сказал:

Ситуация такого рода.
Переименовав 


define('HTTP_SERVER', 'https://site.ru');

http ->https

Подкатегории начинают ловить дэфолтные ссылки /index.php?route=product/category&path=63, и перестают быть кликабельны.
Если я возвращаю обратно http вместо https все стает снова отлично работать кроме сертификата. (защищен не полностью)

SEO PRO стандартный из OcStroe 3.0.2

.htacces родной без изменений.


Ну как бы в этом и проблема... Не достаточно просто в HTTP сервере добавить 1 букву чтобы заработало все тип-топ.

Как минимум в самом движке надо включить настройку, что теперь все работает через https
.htaccess родной без изменений так же вероятно не работает с https (не уверен в этом, в OpenCart точно не работает, по поводу OCStore не уверен).

Прочитайте в нете мануал как правильно опенкарт перевести на https, выполните его и будет вам счастье )))

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

Только что, OtezVikentiy сказал:

Прочитайте в нете мануал как правильно опенкарт перевести на https, выполните его и будет вам счастье )))

Я по факту так и делал...

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


8 минут назад, Feldeshi сказал:

Я по факту так и делал...


Тогда поищите другой мануал, потому что он явно косячный. Как минимум в config.php есть 2 константы HTTP_SERVER и HTTPS_SERVER.
Собственно роут по https:// должен быть только во втором случае. И .htaccess есть необходимость настраивать (вероятнее всего).

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

Так их и есть 2 но проблемы только после первой HTTP_SERVER её тоже нужно перевести в https об этом же и в мануалах сказано. А редирект с www на без www у меня хост автоматом делает, то я в .htacces и не лез. Редирект работает корректно 

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


12 минут назад, Feldeshi сказал:

Так их и есть 2 но проблемы только после первой HTTP_SERVER её тоже нужно перевести в https об этом же и в мануалах сказано. А редирект с www на без www у меня хост автоматом делает, то я в .htacces и не лез. Редирект работает корректно 


Ну... Смотрите, я честно говоря не знаю кто и как там писал мануал и когда... У меня сделано так, что в http прописано http, а в https прописано https. При этом htaccess работает таким образом, что с http роута редиректит на https. Настройка в админке (переход на SSL) включена. При этом в OpenCart всё робит нормально.

Я думаю, что проблема именно в том, что у вас в секции HTTP прописан роут до https и не корректен htaccess.

Как заставить движок работать с другими конфигурациями, я честно говоря хз... Мне кажется, что собственно секцию HTTPS специально и закладывали под использование SSL и как бы... Пытаться настроить что-либо не так, как задумывалось разработчиками - ну такое себе приключение... Может получиться, а может и нет...

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

7 минут назад, OtezVikentiy сказал:

Я думаю, что проблема именно в том, что у вас в секции HTTP прописан роут до https и не корректен htaccess.

Так все гайды указывают на то что HTTP нужно указывать https, иначе все статьи идут по http, что является плохо. 

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


16 часов назад, Feldeshi сказал:

Даст кто-то дельный совет? Очень нужно всё исправить 


Дельный совет:
В http напишите http роут
В https напишите https роут
В .htaccess добавьте
 

RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

В админке CMS зайдите в настройки магазина и включите SSL поддержку.
Сбросьте КЭШ.

Всё должно заработать. От того что вы попробуете так сделать - вы всё равно ничего не потеряете, так как у вас уже не работает SSL, а у меня вот по описанному выше - работает.

И я как бы не очень понимаю какими гайдами вы пользуетесь, потому что первая же ссылка из яндекса описывает именно то что я написал выше:
https://webformyself.com/kak-perevesti-opencart-s-http-na-https/

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

5 часов назад, OtezVikentiy сказал:

RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

Так я так и делал) а 301 редирект у меня хост сам настраивает, есть ли необходимость его прописывать в .htaccess 

 

 

UPD: Сайт падает

RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

UPD 2: Ссылки  на статьи

 

Спойлер

1.thumb.jpg.75a2be2a636026ab864c7470f2c06dad.jpg

Статьи идут по http 

Если использовать метод http->http https->https

// HTTP
define('HTTP_SERVER', 'http://сайт.com.ua/');

// HTTPS
define('HTTPS_SERVER', 'https://сайт.com.ua/');

 

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


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

Так я так и делал) а 301 редирект у меня хост сам настраивает, есть ли необходимость его прописывать в .htaccess


А что значит хост сам настраивает? Хост вы имеете в виду команду техподдержки хостинга или что?

Надо значит смотреть по модулям, может быть какой-то модуль у вас сделан с хардкодом http протокола.

Я сейчас не поленился на своём тестовом стенде с OcStore 3 проделал всё то же самое - всё работает. Ссылки на статьи работают корректно.

От прописывания в .htaccess сайт не падает.

Видимо либо сайт установлен не корректно, либо какие-то модули вмешиваются в работу движка.
Тут уже как бы диагностика по воздуху не прокатит, нужно непосредственно сидеть дебажить. Слишком много аффекта может быть стороннего.
 

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

21 минуту назад, OtezVikentiy сказал:

Видимо либо сайт установлен не корректно, либо какие-то модули вмешиваются в работу движка.
Тут уже как бы диагностика по воздуху не прокатит, нужно непосредственно сидеть дебажить. Слишком много аффекта может быть стороннего.

Если http_server прописываешь в https то статьи тоже грузятся в https, т.е статьи нормально реагируют проблемы возникают с SEO PRO, который дэфолтно установлен в ocstore. Если у меня сейчас HTTP_SERVER в http, ссылки на подкатегории идут сайт.ру/категория/подкатегория

Если я прописываю в HTTP_SERVER https

То все работает тоже ровно, кроме подкатегории они ловят url index.php?route=product/category&path=63 и перестают быть кликабельными.

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


15 минут назад, Feldeshi сказал:

Если http_server прописываешь в https то статьи тоже грузятся в https, т.е статьи нормально реагируют проблемы возникают с SEO PRO, который дэфолтно установлен в ocstore. Если у меня сейчас HTTP_SERVER в http, ссылки на подкатегории идут сайт.ру/категория/подкатегория

Если я прописываю в HTTP_SERVER https

То все работает тоже ровно, кроме подкатегории они ловят url index.php?route=product/category&path=63 и перестают быть кликабельными.

У любого модуля (даже того, который идет из коробки) есть разработчик или тот, кто его поддерживает. Наверное есть смысл написать ему. Потому что https с SEO PRO я лично не тестировал. Я протестировал конкретно работоспособность движка, что он доступен статьи открываются ну и типа ок.

А так вообще выглядит как косяк модуля, потому что ну как бы мне кажется очевидно, что http секция преднанзачена для http протокола и пихать в нее https, чтобы работал один из модулей - ну такой себе костыль, который является не слишком то очевидным решением.

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

54 минуты назад, OtezVikentiy сказал:

У любого модуля (даже того, который идет из коробки) есть разработчик или тот, кто его поддерживает. Наверное есть смысл написать ему. Потому что https с SEO PRO я лично не тестировал. Я протестировал конкретно работоспособность движка, что он доступен статьи открываются ну и типа ок.

А так вообще выглядит как косяк модуля, потому что ну как бы мне кажется очевидно, что http секция преднанзачена для http протокола и пихать в нее https, чтобы работал один из модулей - ну такой себе костыль, который является не слишком то очевидным решением.

Вы мне выше писали делать все по инструкции) так оно там и написано что HTTP_SETVER -> https

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


3 минуты назад, Feldeshi сказал:

Вы мне выше писали делать все по инструкции) так оно там и написано что HTTP_SETVER -> https


Модуль, даже если идет из коробки - то это все равно модуль, а не часть движка.
Насколько я понял, что если сделать как я написал - то движок работает корректно, а вот модуль, который генерит ссылки - начинает работать не корректно, я верно понимаю?

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

7 минут назад, OtezVikentiy сказал:


Модуль, даже если идет из коробки - то это все равно модуль, а не часть движка.
Насколько я понял, что если сделать как я написал - то движок работает корректно, а вот модуль, который генерит ссылки - начинает работать не корректно, я верно понимаю?

Ну у меня щас так и стоит, HTTP_SERVER -> http все проблемы которые у меня были с SSL я исправил (Было "защищен не полностью") руками все поправил, единственная проблема что товар в исходном коде идут на http:// но по факту когда переходишь попадаешь на https просто не хочу иметь проблем с гугл из-за наличия http а не https

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


4 минуты назад, Feldeshi сказал:

Ну у меня щас так и стоит, HTTP_SERVER -> http все проблемы которые у меня были с SSL я исправил (Было "защищен не полностью") руками все поправил, единственная проблема что товар в исходном коде идут на http:// но по факту когда переходишь попадаешь на https просто не хочу иметь проблем с гугл из-за наличия http а не https

А кэши очистили?
По идее движок должен был сам подменить эти ссылки корректно.
Если не подменил - то это какой-то баг видимо может одного из модулей или хз... Тут уже сложно как-то диагностировать.

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

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

А кэши очистили?
По идее движок должен был сам подменить эти ссылки корректно.
Если не подменил - то это какой-то баг видимо может одного из модулей или хз... Тут уже сложно как-то диагностировать.

Конечно чистил, в том то и дело что оно напрямую связано с HTTP_SERVER приходит в голову идея только о костыле HTTPS_TOVAR как я делал для CDN :) 

 

UPD: Выяснил в чем проблема, не придумал как её решить, когда прописываю HTTP_SERVER в https всё стает на свои места как и должно быть, но подкатегории не работают потому что получают ссылку httpss лишняя s

 

UPD 2: 


            <search><![CDATA[$category_info = $this->model_catalog_category->getCategory($category_id);]]></search>
            <add position="before"><![CDATA[
        
        if (!empty($_SERVER['HTTPS'])) {
            // SSL connection
            $base_url = str_replace('http', 'https', $this->config->get('config_url'));
        } else {
            $base_url = $this->config->get('config_url');
        }
            ]]></add>
        

Теперь думаю как лучше str replace сделать

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


        <operation>
            <search><![CDATA[$category_info = $this->model_catalog_category->getCategory($category_id);]]></search>
            <add position="before"><![CDATA[
        if (!empty($_SERVER['HTTPS'])) {
            // SSL connection
            $base_url = str_replace('http', 'https', $this->config->get('config_url'));
        } else {
            $base_url = $this->config->get('config_url');
        }
            ]]></add>
        </operation>

Есть кто может помочь разобраться почему str_replace уводит подкатегории в httpss
Когда в конфиге HTTP_SERVER-> https

 

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


В 17.10.2020 в 11:28, Feldeshi сказал:

        <operation>
            <search><![CDATA[$category_info = $this->model_catalog_category->getCategory($category_id);]]></search>
            <add position="before"><![CDATA[
        if (!empty($_SERVER['HTTPS'])) {
            // SSL connection
            $base_url = str_replace('http', 'https', $this->config->get('config_url'));
        } else {
            $base_url = $this->config->get('config_url');
        }
            ]]></add>
        </operation>

Есть кто может помочь разобраться почему str_replace уводит подкатегории в httpss
Когда в конфиге HTTP_SERVER-> https

 


Ну так это в принципе и нормально на самом деле, потому что в $this->config->get('config_url') лежит HTTP секция. И соответственно если у вас https секция не пустая - то он берет HTTP секцию и меняет в ней все вхождения подстроки http на https.

Соответственно если у вас в HTTP лежит https://test.domain - то это будет заменено на httpss://test.domain

P.S.: вы не там ищете проблему. Не правильно прописывать в HTTP - https. Необходимо прописать в HTTP - http, а в HTTPS - https и исправлять пробелмы, которые возникают в этом разрезе. Тогда у вас все встанет на свои места и будет работать корректно, а при таком подходе - вы по сути подставляете костыли под те места где отрывает.

P.P.S.: если уж прям очень хочется прописывать https в HTTP секцию - тогда необходимо по всему коду найти подобные куски кода и исправлять их на $base_url = $this->config->get('config_url'); без ифов вообще. Но это просто адский костыль...

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

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

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

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

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

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

Войти

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

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

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

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

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

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