support 446 Posted February 28, 2016 Report Share Posted February 28, 2016 Перевод магазина на базе VamShop на SSL протокол состоит из двух частей: 1. Настройка на стороне сервера. 2. Настройка на стороне магазина. 1. Настройка на стороне сервера. Первое, что Вам необходимо сделать - это получить SSL сертификат для своего домена. Здесь есть три пути: 1. Можно купить сертификат, к примеру, сертификат от COMODO на 3 года стоит всего 960 руб., купить его можно например здесь http://ruweb.net/ в разделе SSL. 2. Либо можно получить бесплатно в сервисах вроде Let's Encrypt - https://letsencrypt.org/ , но сертификаты let's encrypt, его получение и автоматическое обновления пока что не во всех хостинг панелях поддерживаются. 3.Есть и ещё один вариант бесплатно получить сертификат, даже если Ваш хостинге не предлагает бесплатные сертификаты, либо у Вас нет доступа к настройкам SSL. Это сервис https://cloudflare.com Просто привязываете Ваш домен к cloudflare и включаете SSL на стороне cloudflare, всё, у Вас есть бесплатный сертификат. В большинстве случаев сертификат можно привязать к домену самостоятельно через панель управления хостингом, обычно у Вас как у пользователя хостинга есть какая-либо панель управления, где всё и делается. Например, всё легко настраивается в панели управления ISPManager, так же добавление SSL сертификатов есть в панелях Plesk, cPanel, DirectAdmin и т.д. Всё, будем считать, что Вы SSL сертификат получили (купили) и установили его на свой домен. Теперь осталось самое простое, просто сделать редирект с http:// на https:// адреса внутри Вашего магазина. 2. Настройка на стороне магазина. Первое, что нужно сделать, это поменять все адреса в магазине с http:// на https:// Для этого откройте конфиг-файлы /includes/configure.php, /admin/includes/configure.php и меняйте в файлах: http:// на https:// Для того чтобы настроить перенаправление (редирект) со старых http:// на https:// адреса в магазине на базе VamShop, открываете файл .htaccess в корневой папке магазина (там где лежит файл index.php) и после: RewriteEngine on Добавляете: RewriteCond %{HTTPS} !on RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] или: RewriteCond %{HTTPS} !on RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [L] RewriteCond %{REQUEST_FILENAME} !-f Всё, теперь у Вас принудительно все ссылки внутри магазина проходят через SSL протокол. Небольшое замечание. Если Вы в своём магазине вставляли скрипты, картинки через html-редактор, добавляи всякие виджеты, счётчики и т.д., убедитесь, что у Вас везде в html-коде этих виджетов, скриптов, картинок тоже исправлен протокол с http:// на https:// Найти такие проблемные места можно с помощью браузера Chrome и его Developer Console, с помощью консоли можно увидеть, в чём проблема. Если Вы всё сделали правильно, в Вашем магазине в браузере хром будет соответствующий значок: Если сертификат на сервер не был установлен или установлен неправильно, то будет такой значок: Если сертификат установлен правильно, но на странице есть какие-то проблемы, то будет значок i: Кликнув по которому можно узнать, в чём проблемы. Читайте ошибки и исправляйте. По умолчанию в VamShop уже всё подготовлено для правильной работы по https:// протоколу, проблемы обычно бывают с виджетами, картинками, которые Вы уже вставляете в свой магазин самостоятельно. Link to post Share on other sites
support 446 Posted February 1, 2017 Author Report Share Posted February 1, 2017 Вот ещё один вариант редиректа c http:// на https://: Link to post Share on other sites
support 446 Posted February 3, 2017 Author Report Share Posted February 3, 2017 Что б яндекс.вебмастер не жаловался что не может найти robots.txt при редиректах с https:// на http://, убираем редирект для robots.txt файла. В .htaccess добавляем: <FilesMatch "robots.txt$"> RewriteEngine off </FilesMatch> Так же после добавления редиректа с https:// на http:// в настройках Яндекс.Вебмастер в разделе Индексрование - Переезд сайта отмечаете "Добавить HTTPS" В Google Webmaster добавляете новый сайт с https:// протоколом. т.е. если у Вас уже добавлен сайт вида http://сайт.ру , после настройки на сайте редиректа с http:// на https:// в Google Webmaster добавьте новый сайт https://сайт.ру Link to post Share on other sites
support 446 Posted October 4, 2017 Author Report Share Posted October 4, 2017 В .htaccess ещё можно добавить строку про favicon.ico, что б яндекс вебмастер не жаловался: <FilesMatch "favicon.ico$"> RewriteEngine off </FilesMatch> Link to post Share on other sites
KoVaLsKy 59 Posted October 5, 2017 Report Share Posted October 5, 2017 на TimeWeb есть бесплатный SSL, великолепно работающий. Link to post Share on other sites
support 446 Posted October 5, 2017 Author Report Share Posted October 5, 2017 Да сейчас на многих хостингах let's encrypt с бесплатным продлением. Просто не везде такое удовольствие есть. Да и аккауратно надо с сертификатами не очень известных центров сертификации. Много уже случаев когда у всяких китацский коспаний были проблемы, т.е. хром например удаляет у себя сертификат китайской кампании какой-нибудь и всё, такой сертификат не будет валидным. 20 минуты назад, KoVaLsKy сказал: на TimeWeb есть бесплатный SSL, великолепно работающий. Link to post Share on other sites
support 446 Posted March 20, 2018 Author Report Share Posted March 20, 2018 Вот здесь - https://www.reg.ru/support/hosting-i-servery/sajty-i-domeny/kak-dobavit-redirekt/redirekt-s-http-na-https Есть различные варианты редиректа, если предложенный в этой теме не работает. На разных хостингах по-разному бывает. Link to post Share on other sites
IVAN.Z 2 Posted February 21, 2019 Report Share Posted February 21, 2019 Не знаю почему но у меня при заходе в браузере на главной не подгружаются font иконки только после внутренеего перехода подрубаются. Что может быть? а если прописать RewriteCond %{HTTPS} !on RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [L] RewriteCond %{REQUEST_FILENAME} !-f то вобще не грузится сайт. velomoto163.ru И не будет ли склейки с velomoto63.ru Это 2 разных сайта будут. Link to post Share on other sites
support 446 Posted February 21, 2019 Author Report Share Posted February 21, 2019 16 минут назад, ZM сказал: Не знаю почему но у меня при заходе в браузере на главной не подгружаются font иконки только после внутренеего перехода подрубаются. Что может быть? а если прописать RewriteCond %{HTTPS} !on RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [L] RewriteCond %{REQUEST_FILENAME} !-f то вобще не грузится сайт. velomoto163.ru И не будет ли склейки с velomoto63.ru Это 2 разных сайта будут. Потому что надо делать редирект с http:// на https://, что б везде и всегда всё грузилось с https:// Тогда такой проблемы не будет. При открытии http:// должно редиректить на https:// Два разных домена - два разных сайта. А если контент одинаковый, то конечно ничего хорошего не будет. Можно в настройках яндекс указать, что это зеркало основного сайта, но смысла держать два домена для одного сайта тоже нет. Link to post Share on other sites
IVAN.Z 2 Posted February 21, 2019 Report Share Posted February 21, 2019 Нужно ли в конфиге прописывать ssl - enable ? или оставить false ? и что сделать все же чтобы при наборе в адресной строке velomoto163.ru прогружалось в ssl были 3 варианта что писать в htacces только вот тут один вариант, придется из друго проекта дергать код Link to post Share on other sites
IVAN.Z 2 Posted February 21, 2019 Report Share Posted February 21, 2019 Сейчас везде прописано так а htaccess не трогал define('HTTP_SERVER', 'https://velomoto163.ru'); // eg, https://localhost - should not be empty for productive servers define('HTTPS_SERVER', 'https://velomoto163.ru'); // eg, https://localhost - should not be empty for productive servers define('ENABLE_SSL', enable); // secure webserver for checkout procedure? 75s2N5Y-Ea-Bkg Link to post Share on other sites
support 446 Posted February 21, 2019 Author Report Share Posted February 21, 2019 25 минут назад, ZM сказал: Сейчас везде прописано так а htaccess не трогал define('HTTP_SERVER', 'https://velomoto163.ru'); // eg, https://localhost - should not be empty for productive servers define('HTTPS_SERVER', 'https://velomoto163.ru'); // eg, https://localhost - should not be empty for productive servers define('ENABLE_SSL', enable); // secure webserver for checkout procedure? 75s2N5Y-Ea-Bkg Это понятно что в конфиге прописано. Но у Вас не прописан редирект всех запросов с http:// на https://, поэтому и получается такая проблема. Вы ж в браузере открываете http:// при первом открытии магазина, а дальше, уже внутри магазина ссылки будут https:// т.е. если в магазине что-то кликните, проблемы не будет этой на следующей странице, по которой Вы кликнете. Поэтому и я говорю, что надо запрещать вообще открывать http:// адрес, а сразу отправлять на https:// Это делается или .htaccess редиректом. Либо можно домен перевести на cloudflare.com сервис. Там и SSL бесплатный и все редиректы можно настроить просто переключателем в панели cloudflare, нигде в файлах магазина копаться не надо. Link to post Share on other sites
IVAN.Z 2 Posted February 21, 2019 Report Share Posted February 21, 2019 Можно узнать что нужно прописать конкретно в моем случаее в htaccess ? p.s и вобще на сколько актуален этот ssl для магазинов? Link to post Share on other sites
IVAN.Z 2 Posted February 21, 2019 Report Share Posted February 21, 2019 Помогло вот это RewriteEngine On RewriteCond %{HTTPS} off RewriteCond %{HTTP:X-Forwarded-Proto} !https RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] Link to post Share on other sites
support 446 Posted February 21, 2019 Author Report Share Posted February 21, 2019 2 часа назад, ZM сказал: Помогло вот это RewriteEngine On RewriteCond %{HTTPS} off RewriteCond %{HTTP:X-Forwarded-Proto} !https RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] Хорошо, что разобрались. Link to post Share on other sites
geval 3 Posted July 21, 2019 Report Share Posted July 21, 2019 В 03.02.2017 в 23:13, support сказал: Что б яндекс.вебмастер не жаловался что не может найти robots.txt при редиректах с https:// на http://, убираем редирект для robots.txt файла. В .htaccess добавляем: <FilesMatch "robots.txt$"> RewriteEngine off </FilesMatch> Так же после добавления редиректа с https:// на http:// в настройках Яндекс.Вебмастер в разделе Индексрование - Переезд сайта отмечаете "Добавить HTTPS" В Google Webmaster добавляете новый сайт с https:// протоколом. т.е. если у Вас уже добавлен сайт вида http://сайт.ру , после настройки на сайте редиректа с http:// на https:// в Google Webmaster добавьте новый сайт https://сайт.ру эти строки надо ставить в конце htaccess или в начале? или без разницы? чтобы работало.. я поставил в конце, но вебмастер яндекса не так быстро всё обходит, результаты очень нескоро дает, потому и хочется сделать сразу всё правильно Link to post Share on other sites
geval 3 Posted July 21, 2019 Report Share Posted July 21, 2019 кстати говоря, в небезысвестном шаблоне @Nexoos я посмотрел в .htaccess похожих даже строк нет, как и упоминания robots и favicon, тем не менее отлично яндекс находит их ( сайт на https), видимо применялся кардинально какой-то другой подход.. Link to post Share on other sites
support 446 Posted July 21, 2019 Author Report Share Posted July 21, 2019 2 часа назад, geval сказал: кстати говоря, в небезысвестном шаблоне @Nexoos я посмотрел в .htaccess похожих даже строк нет, как и упоминания robots и favicon, тем не менее отлично яндекс находит их ( сайт на https), видимо применялся кардинально какой-то другой подход.. Так Вы проверьте сначала, может и не в этом проблема. Много сайтов на SSL переводил и такой проблемы не было у меня. Link to post Share on other sites
Recommended Posts