ocStore 2.3.0.2.3 Почитал инструкцию http://forum.opencart-russia.ru/threads/nastrojka-ssl.424/page-5#post-29116 Почитал, что еще пишут. Начал установку SSL: 1) Включаю в настройках SSl. 2) Правлю файлы конфигов http->https. (base href="https - в коде изменяется) 3) У хостера есть автопереадресация (что бы ручками не писать) если включаю её или дописываю Спойлер: правило в .htaccess RewriteCond %{HTTPS} !=on RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L] Получаю: 1. внешка - с зеленым замком, ошибок нет. 2. админка - переходит на https 2.1 бонусом к замочку и https съезжает вся верстка в админ части 2.2 если вручную прописать http - то все становиться на место. Пробывал остальные пункты инструкции: Вопрос: что еще не сделано? Спойлер: Возможно неправильно настроен .htaccess RewriteBase / RewriteRule ^sitemap.xml$ index.php?route=extension/feed/google_sitemap [L] RewriteRule ^googlebase.xml$ index.php?route=extension/feed/google_base [L] RewriteRule ^system/download/(.*) index.php?route=error/not_found [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_URI} !.*\.(ico|gif|jpg|jpeg|png|js|css) RewriteRule ^([^?]*) index.php?_route_=$1 [L,QSA] ### start RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC] RewriteRule ^(.*)$ http://%1/$1 [R=301,L] RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\ HTTP/ RewriteRule ^index\.html$ / [R=301,L] RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.php\ HTTP/ RewriteRule ^index\.php$ / [R=301,L] RewriteCond %{QUERY_STRING} ^route=common/home$ RewriteCond %{REQUEST_METHOD} !^POST$ RewriteRule ^index\.php$ http://%{HTTP_HOST}? [R=301,L] ### end
Ссылки в https. В том то и дело, что практически все работает, внешка и админка на https. Единственная проблема - верстка
Верстка как раз возможно и не грузится из за ссылок. Кидайте доступ от админк.. гляну или сами смотрите по какому адресу пытается стили подгрузить.
Колдую далее: Спойлер: 1. Обратился к хостеру - до конца так и не довели, сменили как в инструкции http->https: // HTTP define('HTTP_SERVER', 'http://site.com/admin/'); define('HTTP_CATALOG', 'http://site.com/'); // HTTPS define('HTTPS_SERVER', 'https://site.com/admin/'); define('HTTPS_CATALOG', 'https://site.com/'); и еще один // HTTP define('HTTP_SERVER', 'http://site.com/'); // HTTPS define('HTTPS_SERVER', 'https://site.com/'); Спойлер: 2. Хостер закомментил участок переадресации с www на без ### start #RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC] #RewriteRule ^(.*)$ http://%1/$1 [R=301,L] #RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\ HTTP/ #RewriteRule ^index\.html$ / [R=301,L] #RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.php\ HTTP/ #RewriteRule ^index\.php$ / [R=301,L] #RewriteCond %{QUERY_STRING} ^route=common/home$ #RewriteCond %{REQUEST_METHOD} !^POST$ #RewriteRule ^index\.php$ http://%{HTTP_HOST}? [R=301,L] ### end Спойлер: не по делу Ну и тикет еще открыт, но видимо техподдержка не осилит. Пробывал использовать решение с $this->config->set('config_ssl', HTTPS_SERVER); - http://forum.opencart-russia.ru/threads/nastrojka-ssl.424/page-4#post-26036 - безрезультатно. Пробывал различные варианты .htaccess - безрезультатно. Теперь самое интересное: Спойлер: если сделать вот так, то // HTTP define('HTTP_SERVER', 'https://site.com/admin/'); define('HTTP_CATALOG', 'https://site.com/'); // HTTPS define('HTTPS_SERVER', 'https://site.com/admin/'); define('HTTPS_CATALOG', 'https://site.com/'); и еще один // HTTP define('HTTP_SERVER', 'https://site.com/'); // HTTPS define('HTTPS_SERVER', 'https://site.com/'); все работает как надо, при чем: <base href="https://site.com/" Внешняя часть работает на https Админка - поправилась, верстка на месте Спойлер: .htaccess - вот содержимое Options +FollowSymlinks Options -Indexes <FilesMatch "(?i)((\.tpl|\.ini|\.log|(?<!robots)\.txt))"> Require all denied </FilesMatch> RewriteEngine On RewriteBase / RewriteRule ^sitemap.xml$ index.php?route=extension/feed/google_sitemap [L] RewriteRule ^googlebase.xml$ index.php?route=extension/feed/google_base [L] RewriteRule ^system/download/(.*) index.php?route=error/not_found [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_URI} !.*\.(ico|gif|jpg|jpeg|png|js|css) RewriteRule ^([^?]*) index.php?_route_=$1 [L,QSA] ### start #RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC] #RewriteRule ^(.*)$ http://%1/$1 [R=301,L] #RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\ HTTP/ #RewriteRule ^index\.html$ / [R=301,L] #RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.php\ HTTP/ #RewriteRule ^index\.php$ / [R=301,L] #RewriteCond %{QUERY_STRING} ^route=common/home$ #RewriteCond %{REQUEST_METHOD} !^POST$ #RewriteRule ^index\.php$ http://%{HTTP_HOST}? [R=301,L] ### end Сделано: 1) правка конфигов - в начале изменил все в // HTTP и // HTTPS на https 2) включил в админке SSL. Вот собственно и все. Откатил назад. Возникло сразу же вопросов: 1) Что же там такое сработало, что не срабатывало по общепринятой инструкции? (имеется ввиду конфиги+SSL в настройках админки) 2) Как я понимаю, то теперь все что было на http - "давай до свиданья"? 3) Почему все работает без дополнительного редиректа в .htaccess?
Это написано чуть ли не накаждой странице в данной теме. Непонятно почему сразу не сделали. Я был уверен, что вы все сделали. Да. Делайте редирект чтобы не было досвидания.
Да в том то все и дело, что практически во всех инструкциях предписание было: 1) // HTTP define('HTTP_SERVER', 'http: - оставить в http без изменений; 2) // HTTPS define('HTTPS_SERVER', 'http: заменить на https: Хостер мне молча сделал переадресацию )) а я сижу. правила ставлю... Хотел еще спросить по поводу правильной SEO переадресации - можете вариант подсказать? Может лучше фикс поставить - http://forum.opencart-russia.ru/attachments/fix_https-ocmod-xml.2959/? Ну тогда, как я понимаю, то инструкция по установке SSL и переходе на HTTPS должна иметь вид для ocStore 2.3: 1. Установка сертификата на хостинге 2. Система >>> Настройки >>> Использовать SSL >>> да 3. Файл config.php в папке корень сайта/admin/ редактируем следующим видом: Спойлер: было // HTTP define('HTTP_SERVER', 'http://site.com/admin/'); define('HTTP_CATALOG', 'http://site.com/'); // HTTPS define('HTTPS_SERVER', 'http://site.com/admin/'); define('HTTPS_CATALOG', 'http://site.com/'); Спойлер: стало define('HTTP_SERVER', 'https://site.com/admin/'); define('HTTP_CATALOG', 'https://site.com/'); // HTTPS define('HTTPS_SERVER', 'https://site.com/admin/'); define('HTTPS_CATALOG', 'https://site.com/'); 4. Файл config.php в корне сайта редактируем следующим видом: Спойлер: было // HTTP define('HTTP_SERVER', 'http://site.com/'); // HTTPS define('HTTPS_SERVER', 'http://site.com/'); Спойлер: стало // HTTP define('HTTP_SERVER', 'https://site.com/'); // HTTPS define('HTTPS_SERVER', 'https://site.com/'); 5. Устанавливаем переадресацию - и тут может быть 2 варианта (отдельное внимание стоит обратить, на то, что если выполнить оба варианта - будет зациклена переадресация с соответствующим сообщением о множественной переадресации): 5.1 на стороне хостера через админку хостинга - тут лучше обратиться к FAQ хостера или в техподдержку; 5.2 внесением изменений в .htaccess расположенном в корне сайта. Ниже привожу найденные варианты, что кому подойдет: Спойлер: получил от хостера RewriteCond %{HTTPS} !=on RewriteRule ^/?(.*) https://%{HTTP_HOST}%{REQUEST_URI} [R,L] Спойлер: нашел в процессе поиска 4 варианта 1й) #С домена с WWW префиксом на без # RewriteCond %{HTTP_HOST} ^www.stehnika\.net$ [NC] RewriteRule ^(.*)$ http://stehnika.net/$1 [R=301,L] #Для HTTPS-версии: RewriteCond %{SERVER_PORT} ^80$ [OR] RewriteCond %{HTTP} =on RewriteRule ^(.*)$ https://stehnika.net/$1 [R=301,L] 2й) RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC] RewriteRule ^ https://%1%{REQUEST_URI} [R=301,L] RewriteCond %{HTTP:X-Forwarded-Proto} =http [OR] RewriteCond %{HTTP:X-Forwarded-Proto} ="" RewriteCond %{HTTP:X-HTTPS} !1 [OR] RewriteCond %{HTTPS} !=on RewriteCond %{REQUEST_URI} !robots\.txt RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L] 3й) #Здесь две переадресации с WWW на без WWW и с http на https RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC] RewriteRule ^ https://%1%{REQUEST_URI} [R=301,L] RewriteCond %{HTTP:X-Forwarded-Proto} =http [OR] RewriteCond %{HTTP:X-Forwarded-Proto} ="" RewriteCond %{HTTP:X-HTTPS} !1 [OR] RewriteCond %{HTTPS} !=on RewriteCond %{REQUEST_URI} !robots\.txt RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L] #конец 4й) #начало #С домена с WWW префиксом на без # RewriteCond %{HTTP_HOST} ^www.stehnika\.net$ [NC] RewriteRule ^(.*)$ http://stehnika.net/$1 [R=301,L] #Для HTTPS-версии: RewriteCond %{SERVER_PORT} ^80$ [OR] RewriteCond %{HTTP} =on RewriteRule ^(.*)$ https://stehnika.net/$1 [R=301,L] #конец
Честно не знаю.. можете поставить. Если все в https то думаю можно и поставить. Суть переадресаций не в том чтобы все работало (хотя это тоже отчасти), а в "переезде" и не потери позиций. Хотя мнения тут расходятся. у одних все падает и потом через месяц-два где то возвращается, а у некоторых просто проседает. Но подход у вас правильный ))) Особенно к постановке задачи (все бы так )
Попробую, потом отпишусь. Я конечно уже для ПС обозначил новый адрес, но теперь надо читать по SEO. Спойлер: ))) Мне нужна была ПОМОЩЬ с конкретной проблемой, глобально все работало, вопрос касался небольшого изменения, что бы работало. Так что просто пришлось все оформлять как надо)))
Всем привет! не могу настроить сертификат на 2.3.0.2 (rs.6), добавил в .htaccess Код: RewriteCond %{HTTPS} =off RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L] Только на главной странице браузер пишет, что части этой страницы такие как изображения не защищенный. На остальных страницах сертификат присутствует.
Gluka, скорей всего, у баннеров или каких-то других картинок указаны полные ссылки с http. Нужно переделать.
После переезда на https в вебмастере яндекс появилось следующее предупреждение: "Робот не смог получить доступ к файлу robots.txt при последнем обращении." Как поправить? Да, с картами сайта как быть?
Всё правильно, ведь настроен редирект на https. Если редирект сделан, то немного погодя Яндекс добавит сайт https как зеркало, чуть позже и как главное зеркало. Потом начнётся перенос выдачи на него. Можно немного ускорить выбор зеркала, в справке Яндекса об этом есть.
Еще подскажите, в картах сайта на сайте идет http. Нужно ли их переименовывать на https или ждать немного погодя? какой период это может занять (немного погодя)?
Внес изменения в robots.txt (инфу нашел на стороннем форуме), и в вебмастере яндекс появились изменения. Жду обновления данных у яндекса.
Всем привет. Подскажите пожалуйста, переехал на https, все работает, все нормально, кроме того, что в меню ссылки ведут на http страницы, которые потом редиректят уже на https, как это поправить? Причем с верхнего меню норм http://prntscr.com/kg6av9 а вот подменюшки ведут на http http://prntscr.com/kg6bam Как поправить это?