support

Настройка SSL

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

support

Перевод магазина на базе VamShop на SSL протокол состоит из двух частей:

1. Настройка на стороне сервера.

2. Настройка на стороне магазина.

1. Настройка на стороне сервера.

Первое, что Вам необходимо сделать - это получить SSL сертификат для своего домена.

Можно купить сертификат, к примеру, сертификат от COMODO на 3 года стоит всего 960 руб., купить его можно например здесь http://ruweb.net/ в разделе SSL.

Либо можно получить бесплатно в сервисах вроде Let's Encrypt - https://letsencrypt.org/ , но сертификаты let's encrypt, его получение и автоматическое обновления пока что не во всех хостинг панелях поддерживаются.

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

Например, всё легко настраивается в панели управления 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]
   RewriteCond %{REQUEST_FILENAME} !-f

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

 

Небольшое замечание.

Если Вы в своём магазине вставляли скрипты, картинки через html-редактор, добавляи всякие виджеты, счётчики и т.д., убедитесь, что у Вас везде в html-коде этих виджетов, скриптов, картинок тоже исправлен протокол с http:// на https://

Найти такие проблемные места можно с помощью браузера Chrome и его Developer Console, с помощью консоли можно увидеть, в чём проблема.

Если Вы всё сделали правильно, в Вашем магазине в браузере хром будет соответствующий значок:

vamshop2-ssl-secure.png.1fdf0590cc57e55b

Если сертификат на сервер не был установлен или установлен неправильно, то будет такой значок:

vamshop2-ssl-not-secure.png.e53f092bad73

Если сертификат установлен правильно, но на странице есть какие-то проблемы, то будет значок i:

vamshop2-ssl-info.png.de84f2eaf780cb2097

Кликнув по которому можно узнать, в чём проблемы.

Читайте ошибки и исправляйте. По умолчанию в VamShop уже всё подготовлено для правильной работы по https:// протоколу, проблемы обычно бывают с виджетами, картинками, которые Вы уже вставляете в свой магазин самостоятельно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
support

Вот ещё один вариант редиректа c http:// на https://: 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
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://сайт.ру

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
support

В .htaccess ещё можно добавить строку про favicon.ico, что б яндекс вебмастер не жаловался:

<FilesMatch "favicon.ico$"> 
RewriteEngine off 
</FilesMatch>

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
KoVaLsKy

на TimeWeb есть бесплатный SSL, великолепно работающий.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
support

Да сейчас на многих хостингах let's encrypt с бесплатным продлением.

Просто не везде такое удовольствие есть.

Да и аккауратно надо с сертификатами не очень известных центров сертификации.

Много уже случаев когда у всяких китацский коспаний были проблемы, т.е. хром например удаляет у себя сертификат китайской кампании какой-нибудь и всё, такой сертификат не будет валидным.

 

20 минуты назад, KoVaLsKy сказал:

на TimeWeb есть бесплатный SSL, великолепно работающий.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
support

Вот здесь - https://www.reg.ru/support/hosting-i-servery/sajty-i-domeny/kak-dobavit-redirekt/redirekt-s-http-na-https

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

На разных хостингах по-разному бывает.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
ZM

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

RewriteCond %{HTTPS} !on
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [L]
RewriteCond %{REQUEST_FILENAME} !-f

 

то вобще не грузится сайт. 

 

velomoto163.ru 

И не будет ли склейки с

velomoto63.ru 

Это 2 разных сайта будут. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
support
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://

 

Два разных домена - два разных сайта.

А если контент одинаковый, то конечно ничего хорошего не будет.

Можно в настройках яндекс указать, что это зеркало основного сайта, но смысла держать два домена для одного сайта тоже нет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
ZM

Нужно ли в конфиге прописывать ssl - enable ? или оставить false ? и что сделать все же чтобы при наборе в адресной строке velomoto163.ru прогружалось в ssl были 3 варианта что писать в htacces только вот тут один вариант, придется из друго проекта дергать код

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
ZM

Сейчас везде прописано так а htaccess не трогал

png&tknv=v2&size=2048x2048

  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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
support
25 минут назад, ZM сказал:

Сейчас везде прописано так а htaccess не трогал

png&tknv=v2&size=2048x2048


  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, нигде в файлах магазина копаться не надо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
ZM

Можно узнать что нужно прописать конкретно в моем случаее в htaccess ? 

p.s и вобще на сколько актуален этот ssl для магазинов? 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
ZM

Помогло вот это

RewriteEngine On RewriteCond %{HTTPS} off RewriteCond %{HTTP:X-Forwarded-Proto} !https RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
support
2 часа назад, ZM сказал:

Помогло вот это

RewriteEngine On RewriteCond %{HTTPS} off RewriteCond %{HTTP:X-Forwarded-Proto} !https RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Хорошо, что разобрались.

Поделиться сообщением


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

Для публикации сообщений создайте учётную запись или авторизуйтесь

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

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти