Сайт перестал отдавать http работает только https

Столкнулся с проблемой, то что после перевода сайта на https, через некоторое время перестала отдаваться http версия сайта. Может по тому, что по одной из статей по переводу сайта на https сделал настройки в manager — на server_protocol на https и link_tag_scheme 1. Вернул эти параметры, как было, ни чего не поменялось.
До манипуляций с админкой MODX-е работал редирект в Apache
RewriteCond %{HTTPS} off
            RewriteCond %{HTTP:X-Forwarded-Proto} !https
            RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
После изменений нет http,
как можно настроить MODX, так что бы работал и http и https ну, или только http с редиректом?
Александр Михеев
22 января 2020, 12:24
modx.pro
486
0

Комментарии: 5

Антон Тарасов
22 января 2020, 12:51
0
Давайте по порядку. зачем вам и http и https одновременно?
    Александр Михеев
    22 января 2020, 13:05
    0
    Сайт работает давно и в поисковиках есть старые ссылки в http.
    Так же если набрать _http://site.ru то редиректа в браузерах не происходит, так как нет версии http.
    То есть люди вводя в браузере просто site.ru должны в начале попасть в начале на http версию, а затем их редиректом переносит на https, в итоге сайт не загружается, если не указать ему принудительно _https://site.ru.
      Антон Тарасов
      22 января 2020, 13:27
      0
      Основной адрес должен быть один, иначе это дубли с точки зрения SEO, что не гуд.
      намудрили что-то вы.
      Попробуйте вернуться к варианту, чтобы по дефолту работал http и только. Потом добавьте https.
      Если у вас server_protocol=https и link_tag_scheme=1, а также в основном config.inc.php тоже адреса с https, и кроме того для контекста не переопределены адреса и протокол сайта(если вдруг он у вас не один, или в дефолтном что-то добавляли, редко, но бывает), то имхо проблему нужно искать в конфигурации веб-сервера.
      Да, и на настройки хостинга тоже неплохо бы взглянуть, чтобы соответствовали. И кеш очищайте почаще.
        Павел Романов
        22 января 2020, 14:51
        0
        У Вас при запросе сайта по HTTP 301-й ответ сервера? Если да, то:
        1. Оставьте только HTTPS.
        2. В Яндекс.Вебмастере в разделе «Переезд сайта» поставьте галку «Добавить HTTPS».
        3. Добавьте сайт с HTTPS в Яндекс.Вебмастер и Google Search Console.
        После этого все переедет на HTTPS без особых последствий и в результатах поиска все ссылки будут сразу с HTTPS.
      Александр Михеев
      22 января 2020, 14:14
      0
      Менял параметры server_protocol=http и link_tag_scheme=-1, результатов не дало, так же открывает только https(все переходы в браузере на сайте сразу на https указывают, если мышкой навести).
      В конфиге config.inc.php ничего не менял.
      if (!defined('MODX_URL_SCHEME')) {
                   $url_scheme=  $isSecureRequest ? 'https://' : 'http://';
                   define('MODX_URL_SCHEME', $url_scheme);
      На сервере работает связка Apache+mpm-event+php-fpm. Настройки .htaccess перенесены в VirtгalHost.
      Настроено два идентичных хоста на разные порты*80 и *443, разница только в том, что настроен редирект на *80.
      <VirtualHost *:80>
              ServerAdmin ---------
              ServerName site.ru
              Protocols h2c http/1.1
              DocumentRoot -------------
      		 <Directory /home/----/---->
                      Options +FollowSymLinks +ExecCGI -Indexes -MultiViews
                      AllowOverride All
                      deny from  165.51.0.0/16
                      Order allow,deny
                      allow from all
                      #Require all granted
      
      RewriteEngine On
      RewriteBase /
      
      #redirect http to https
      RewriteCond %{HTTPS} off
      RewriteCond %{HTTP:X-Forwarded-Proto} !https
      RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
      
      # Rewrite www.domain.com -> domain.com -- used with SEO Strict URLs plugin
      RewriteCond %{HTTP_HOST} .
      RewriteCond %{HTTP_HOST} !^site\.ru [NC]
      RewriteRule (.*) http://site.ru/$1 [R=301,L]
      
      # The Friendly URLs part
      RewriteCond %{REQUEST_FILENAME} !-f
      RewriteCond %{REQUEST_FILENAME} !-d
      RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]
      
      DirectoryIndex index.php
      #DirectoryIndex index.html
      
      # Запретить доступ к файлам с определенным расширением
      <FilesMatch "\.(inc|cfg|pl|conf)$">
         Order allow,deny
         Deny from all
      </FilesMatch>
                  </Directory>
      		</VirtualHost>
        Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
        5