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

[Решено] Как настроить SSL?


Recommended Posts

15 часов назад, Mykhaylo сказал:

сколько облегчить жизнь следующим читателям и писателям, подобным мне.

Никому ничего не облегчит!

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

RewriteBase /

 

А ещё вы что-то забыли вот тут:

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

Вы на какой протокол редиректите?

 

По идее, такой редирект при заходе по http должен привести к бесконечному циклическому редиректу (пока браузер не обрубит).

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


  • 1 month later...
Добрый день, помогите решить проблему
Перенес сайт на другой хостинг, сменил DNS, установил SSL сертификат, сайт работал, но теперь выдает такую ошибку:
 
При соединении с site.com произошла ошибка. Узел получил действительный сертификат, но в доступе было отказано. Код ошибки: SSL_ERROR_ACCESS_DENIED_ALERT 
 
Подскажите в чем может быть проблема?
Надіслати
Поділитися на інших сайтах


8 часов назад, lanbar сказал:

При соединении с site.com произошла ошибка. Узел получил действительный сертификат, но в доступе было отказано. Код ошибки: SSL_ERROR_ACCESS_DENIED_ALERT

Мозилла?

Попробуйте анонимное окно.

 

Скорее всего, это проблема конкретно вашего браузера (персонально вашего).

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


  • 2 months later...

Всем спасибо за тему.

Почитал и сам настроил редирект.

В файл htaccess добавил вот такой код
 RewriteCond %{HTTPS} off
 RewriteCond %{HTTP:X-Forwarded-Proto} !https
 RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
 RewriteCond %{HTTP_HOST} ^www\.сайт.ком\.ru$ [NC]

 

В файле config.php в корне исправил строчки для HTTPS

// HTTPS
define('HTTPS_SERVER', 'https://сайт.ком/');

 

В файле config.php в папке admin исправил строчки для HTTPS

define('HTTPS_SERVER', 'https://сайт.ком/admin/');
define('HTTPS_CATALOG', 'https://сайт.ком/');

 

Все работает. Спасибо!

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


10 часов назад, Aspirinnka1 сказал:

RewriteCond %{HTTP_HOST} ^www\.сайт.ком\.ru$ [NC]

Вы здесь вторую строчку забыли.

RewriteCond - это условие редиректа, но не сам редирект. В следующей строке должна быть директива RewriteRule с указанием самого редиректа.

 

И домен там вписывать не обязательно (что особенно актуально для мультимагазинов).

 

Вот так выглядит полностью редирект удаления www (в универсальном варианте):

RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ https://%1/$1 [R=301,L]

 

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


Круть, спасибо. Переписал .htaccess.

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

Теперь правильно?

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


15 часов назад, Dotrox сказал:

И размещать всё это надо сразу под строкой с


RewriteBase /

о как. а я разместил в самом начале файла после Options +FollowSymlinks

 

А у меня после RewriteBase / идет еще куча какие-то условий :

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]

 

Просто добавить сюда в конец?

 

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


13 часов назад, Aspirinnka1 сказал:

Просто добавить сюда в конец?

В том и суть, что нет!

Я потому и написал об этом, что большинство именно так и делает, просто дописывает в конец думая, что это не имеет значения.

 

Эти редиректы должны быть именно под строкой с

RewriteBase /

Не "где-то" под ней, а именно сразу под ней.

 

Редиректы обрабатываются в порядке их следования в .htaccess и редирект, который отвечает за работу ЧПУ в ОК (последние 4 строки), всегда должен быть последним!

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


В 16.08.2019 в 01:49, Dotrox сказал:

Я потому и написал об этом, что большинство именно так и делает, просто дописывает в конец думая, что это не имеет значения.

однако... Спасибо большое! Написал сразу после RewriteBase /

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

 

А можно еще наивный вопрос? Когда у меня редиректы были в начале htaccess указаны, вродь же все работало. Ну я проверил несколько страниц, админку - везде https был. Как влияет перенос редиректа под RewriteBase / ?

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


14 минут назад, Aspirinnka1 сказал:

Когда у меня редиректы были в начале htaccess указаны, вродь же все работало. Ну я проверил несколько страниц, админку - везде https был. Как влияет перенос редиректа под RewriteBase / ?

В вашем случае никак, кроме более логичного размещения.

 

Как я уже писал выше, большинство людей дописывает редиректы в конец, а не в начало и вот тогда перенос влияет и существенно.

Суть в том, что все подобные редиректы должны быть перед редиректом, который нужен для работы ЧПУ в ОК, иначе в ссылках появляется мусор и другие глюки.

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


  • 3 weeks later...

ЕСЛИ ПОСЛЕ установки все равно после всех манипуляций прыгает на http, то я сделал так 

 

1. В файле system/library/url.php

2. Есть строки:

public function link($route, $args = '', $secure = false) {
        if ($this->ssl && $secure) {
            $url = $this->ssl . 'index.php?route=' . $route;
        } else {
            $url = $this->url . 'index.php?route=' . $route;
        }

МЕНЯЕМ:

public function link($route, $args = '', $secure = false) {
        if ($this->ssl && $secure) {
            $url = $this->ssl . 'index.php?route=' . $route;
        } else {
            $url = $this->url (НА SSL) . 'index.php?route=' . $route;
        }

И ВСЕ РАБОТАЕТ. 

 

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


6 часов назад, kd21 сказал:

после всех манипуляций

Видимо, не всех. У вас же там $secure = false.

Именно это надо исправить, о чём я уже не раз писал в этой теме.

 

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

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


23 часа назад, Dotrox сказал:

Видимо, не всех. У вас же там $secure = false.

 

ssl прописал и все норм, при заходе сразу заходит https.

 

$secure = false а тут что надо прописать ....  

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


17 часов назад, kd21 сказал:

$secure = false а тут что надо прописать ....  

Заменить false на true.

Эффект будет такой же, как и от вашей правки, но без поломки логики этого кода.

 

 

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


  • 2 months later...

Парни, подскажите, в конфигах обоих добавил букву S

сайт по httpS открывается а по обычному проткоолу вместо редиректа пишет страница НЕ НАЙДЕНА.

 

выкладываю свой htaccess

 

# 1.To use URL Alias you need to be running apache with mod_rewrite enabled.

# 2. In your opencart directory rename htaccess.txt to .htaccess.

# For any support issues please visit: http://www.opencart.com

Options +FollowSymlinks

# Prevent Directoy listing
Options -Indexes

# Prevent Direct Access to files
<FilesMatch "(?i)((\.tpl|\.ini|\.log|(?<!robots)\.txt))">
 Require all denied
## For apache 2.2 and older, replace "Require all denied" with these two lines :
# Order deny,allow
# Deny from all
</FilesMatch>

# SEO URL Settings
RewriteEngine On
# If your opencart installation does not run on the main web folder make sure you folder it does run in ie. / becomes /shop/

RewriteBase /
RewriteRule ^sitemap.xml$ index.php?route=extension/feed/yandex_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]

RewriteCond %{HTTP_HOST} ^www.nevamarket24.ru$ [NC]
RewriteRule ^(.*)$ https://nevamarket24.ru/$1 [R=301,L]

### Additional Settings that may need to be enabled for some servers
### Uncomment the commands by removing the # sign in front of it.
### If you get an "Internal Server Error 500" after enabling any of the following settings, restore the # as this means your host doesn't allow that.

# 1. If your cart only allows you to add one item at a time, it is possible register_globals is on. This may work to disable it:
# php_flag register_globals off

# 2. If your cart has magic quotes enabled, This may work to disable it:
# php_flag magic_quotes_gpc Off

# 3. Set max upload file size. Most hosts will limit this and not allow it to be overridden but you can try
# php_value upload_max_filesize 999M

# 4. set max post size. uncomment this line if you have a lot of product options or are getting errors where forms are not saving all fields
# php_value post_max_size 999M

# 5. set max time script can take. uncomment this line if you have a lot of product options or are getting errors where forms are not saving all fields
# php_value max_execution_time 200

# 6. set max time for input to be recieved. Uncomment this line if you have a lot of product options or are getting errors where forms are not saving all fields
# php_value max_input_time 200

# 7. disable open_basedir limitations
# php_admin_value open_basedir none

### Display PHP errors 
### Uncomment the commands by removing the # sign in front of it.
# php_flag display_startup_errors on
# php_flag display_errors on
# php_flag html_errors on
# php_flag track_errors on
# php_value error_reporting "E_ALL"

 

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


В 08.09.2019 в 14:42, Dotrox сказал:

Заменить false на true.

Эффект будет такой же, как и от вашей правки, но без поломки логики этого кода.

 

 

Подскажите? мой пост чуть выше, а вы явно спец тут главный в таком вопросе.

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


29 минут назад, Vasekvasil сказал:

Парни, подскажите, в конфигах обоих добавил букву S

сайт по httpS открывается а по обычному проткоолу вместо редиректа пишет страница НЕ НАЙДЕНА.

 

выкладываю свой htaccess

 

 

так редирект не прописан.

сразу после RewriteBase /

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

в админке в настройках магазина включили SSL?

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

13 минут назад, Blast сказал:

 

так редирект не прописан.

сразу после RewriteBase /


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

в админке в настройках магазина включили SSL?

 

естественно в админке включил он же открывает по ssl но не редиректит.

 

дописал то что вы сказали, итог печальный https://prnt.sc/pxkez4

 

а вообще мне казалось что я его прописывал- https://prnt.sc/pxkgs3

но это тоже не работает пишет как я говорил выше что страница не найдена

Змінено користувачем Vasekvasil
Надіслати
Поділитися на інших сайтах


33 минуты назад, Vasekvasil сказал:

а вообще мне казалось что я его прописывал- https://prnt.sc/pxkgs3

Вам только казалось.

 

Я уже сто раз писал и в этой теме и в других... Но зачем читать? Лучше воткнуть первое, что нагуглилось, а потом начинать спрашивать то, на что уже есть давно ответы.

 

1. То, что вы вставили, это не редирект на https - это редирект для удаления www.

2. Все подобные редиректы должны быть исключительно после RewriteBase /. "После" означает прямо в следующей строке, а не где-то после куда захочется!

 

 

То, что выше предложил @Blast - это и есть правильный редирект на https.

 

 

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


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

Вам только казалось.

 

Я уже сто раз писал и в этой теме и в других... Но зачем читать? Лучше воткнуть первое, что нагуглилось, а потом начинать спрашивать то, на что уже есть давно ответы.

 

1. То, что вы вставили, это не редирект на https - это редирект для удаления www.

2. Все подобные редиректы должны быть исключительно после RewriteBase /. "После" означает прямо в следующей строке, а не где-то после куда захочется!

 

 

То, что выше предложил @Blast - это и есть правильный редирект на https.

 

 

вот что появляется после того что предлжил Бласт https://prnt.sc/pxkez4

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


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

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

Important Information

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