Jump to content
Radprox

HTTPS (SSL) и кэш изображений браузера

Recommended Posts

Доброго времени суток :) Столкнулся с проблемой перехода на https. Все вроде хорошо работает, но браузер через раз кэширует некоторые изображения (картинки товаров в категории и изображения самих категорий), а так-же файл stylesheet.css. Все полностью файлы отдаются по https, в файлах движка и базе данных все ссылки в виде //sitename.com/. Картинки доступны по обоим протоколам , подозреваю что дело в этом. С выключенным SSL на http все нормально кэшируется. Сайт еще на open serverе, apache 2.4 + php 5.6 +nginx 1.14

Переход делал по https://forum.opencart.pro/topic/5083-руководство-для-перехода-на-ssl-https-v20/, + модуль FIX HTTPS. В htaccess прописано:

 

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]

 

Помогите пожалуйста найти решение!

Share this post


Link to post
Share on other sites
14 хвилини назад, Radprox сказав:

еще на open serverе, apache 2.4 + php 5.6 +nginx 1.14

Если у вас nginx отдает статику (а скорее всего так и есть), то 301 редирект нужно в его конфиге прописывать. Второе в конфиге какого виртуал хоста прописаны настройки для SSL? У себя я настраиваю SSL в конфиге nginx и в нем же редаю 301 редирект - намного проще все

Share this post


Link to post
Share on other sites
Posted (edited)
3 часа назад, Flint2000 сказал:

Если у вас nginx отдает статику (а скорее всего так и есть), то 301 редирект нужно в его конфиге прописывать. Второе в конфиге какого виртуал хоста прописаны настройки для SSL? У себя я настраиваю SSL в конфиге nginx и в нем же редаю 301 редирект - намного проще все

Добавил в Apache_2.4-PHP_5.5-5.6+Nginx_1.14_vhostn.conf в блоке server такой редирект. Картинки теперь не открываются по http - происходит перенаправление на https. Но браузер все равно не кэширует их и файл stylesheet.css

 

add_header Strict-Transport-Security "max-age=15768000; includeSubDomains" always;

        set $do_redirect  1;
        
        if ($scheme ~* ^https$) {
            set $do_redirect 0;
        }
        if ($request_uri ~* ^/robots\.txt$) {
            set $do_redirect 0;
        }
        if ($do_redirect = 1) {
            return 301 https://$host$request_uri;
        }

        # Запрет использования www префикса (www.xxx.com => xxx.com)
        
        if ($host ~* ^www\.(.+)$) {
            set $host_without_www $1;
            return 301 $scheme://$1$request_uri;
        }

 

Edited by Radprox

Share this post


Link to post
Share on other sites
Posted (edited)

Кстати, если переключить на чистый Apache без Nginx, то ничего не меняется, проблема остается.. 

Вот заголовок stylesheet.css

Request Headers

  1. Accept:
    text/css,*/*;q=0.1
  2. Accept-Encoding:
    gzip, deflate, br
  3. Accept-Language:
    ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7
  4. Connection:
    keep-alive
  5. Cookie:
    PHPSESSID=p667em2r2mrajrnrvduja5gt12; default=r86aq742ni9g41q7ae05mc1vh5; language=ru-ru; currency=UAH; language_url=ru
  6. DNT:
    1
  7. Host:
    sitename.com
  8. Referer:
  9. Sec-Fetch-Dest:
    style
  10. Sec-Fetch-Mode:
    no-cors
  11. Sec-Fetch-Site:
    same-origin
  12.  
    User-Agent:
    Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.149 Safari/537.36
Responce Headers
 
  1. Accept-Ranges:
    bytes
  2. Cache-Control:
    max-age=604800
  3. Connection:
    Keep-Alive
  4. Content-Encoding:
    gzip
  5. Content-Length:
    36253
  6. Content-Type:
    text/css
  7. Date:
    Fri, 03 Apr 2020 14:28:59 GMT
  8. ETag:
    "39f49-5a130d0d5c923-gzip"
  9. Expires:
    Fri, 10 Apr 2020 14:28:59 GMT
  10. Keep-Alive:
    timeout=10, max=99
  11. Last-Modified:
    Thu, 19 Mar 2020 08:18:37 GMT
  12. Server:
    Apache
  13.  
    Vary:
    Accept-Encoding
 
Edited by Radprox

Share this post


Link to post
Share on other sites

Есть идеи, товарищи знатоки? Возможно за вознаграждение

Share this post


Link to post
Share on other sites
2 часа назад, Radprox сказал:

Есть идеи, товарищи знатоки? Возможно за вознаграждение

Вопрос решен, неправильно был установлен сертификат :D

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
You are posting as a guest. If you have an account, please sign in.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Similar Content

    • By markimax
      Скачать/Купить дополнение


      SEO Fix HTTPS
      Данный FIX заставляет Opencart работать корректно с обоими протоколами одновременно, как того требует Яндекс какое то время, при переезде на HTTPS.
      При запросе http:// - фикс будет отдавать все ссылки http
      При запросе https:// - будет отдавать все ссылки https
      Даже если эти ссылки были в ручную написаны в текстах или, к примеру для баннеров.
      После склейки http и https, советую в htaccess настроить редирект 301 с http на https, чтобы ссылки магазина работали только по https протоколу
      Для правильной работы фикса у вас должны отличаться HTTP_CATALOG и HTTPS_CATALOG в config.php.
       
      Добавил markimax Добавлено 21.07.2016 Категория SEO, карта сайта, оптимизация Системные требования Метод активации Без активации Ioncube Loader Нет OpenCart 2.3
      2.2
      2.1
      2.0 ocStore 2.3
      2.2
      2.1 OpenCart.Pro, ocShop Opencart.pro 2.3
      Opencart.pro 2.1
      OcShop 2.0.3.х Обращение к серверу разработчика Нет Старая цена 0  
    • By markimax
      490.00 руб
      Скачать/Купить дополнение


      SEO HTTPS FIX PRO
      Внимание кому надо функционал минификации, объединения, переноса скриптов CSS и JS - обратите лучше внимание на модуль Jet Cache
      Это полноценный кешировщик с полным функционалом объединения, минификации, переноса, отложенной загрузки скриптов и сжатия изображений (webp, mozjpeg, optipng)
       
      Демо: http://oc2.opencartadmin.com/admin/index.php?route=module/httpsfix
      Дополнение предназначено для корректного переноса Opencart на HTTPS протокол, и устранения проблем, связанных с этим процессом.
      Что умеет это дополнение.
      1. Заставляет Opnecart корректно отдавать контент одновременно по обеим протоколам (http и https)
      2. Функционал переноса CSS и JS скриптов к конец исходного кода HTML страницы (PageSpeed Insights рекомендации) и минимизация HTML кода страницы
      3. Гибко устранять "хвосты" связанные с разными вариантами ввода внешних и внутренних адресов.
      Так например при переезде на HTTPS необходимо изменить протокол подключения
      к внешним CDN например с http://cdn.google.com на https://cdn.google.com
      Модуль позволяет это сделать в два клика.
       
       
      В процессе наполнения контентом и верстки шаблонов магазина, зачастую встречаются ссылки
      как на внутренние так и на внешние ресурсы совершенно разного вида.
      Например если у вас встречаются ссылки www.vash_site.ru/link_1 и без vash_site.ru/link_1 в контенте магазина,
      автоматичски в https преобразуются только ссылки, которые вы определилил как основное зеркало.
      А все остальные остануться старые и бразуеры будут выписывать warning и не включать зеленый замочек.
      При помощи модуля, вы сможете создать любые правила для любых преобразований внутренних ссылок в магазине как внутренних так и внешних.
      Теперь вам не нужно судорожно искать, где же вы в шаблоне еще не поменяли http на https,
      достаточно посмотреть в консоль и написать в модуле соответсвующее правило.
      После склейки http и https, советую в htaccess настроить редирект 301 с http на https, чтобы ссылки магазина работали только по https протоколу
      Для правильной работы фикса у вас должны отличаться HTTP_CATALOG и HTTPS_CATALOG в config.php.
      Также мод фиксит проблемы определения протокола, при нестандартных настройках связки nginx => apache.
       
       Лицензия Все права на модуль принадлежат разработчику markimax Условия использования лицензии: один домен - одна лицензия (покупка продукта для каждого домена). Условия использования лицензии - "на владельца". Далее...   Условия технической поддержки  
      Добавил markimax Добавлено 22.12.2016 Категория SEO, карта сайта, оптимизация Системные требования PHP 5.3+Если OC 1.5.x - vQmod Метод активации Через официальный сайт дополнения Ioncube Loader Нет OpenCart 3.0
      2.3
      2.2
      2.1
      2.0
      1.5.6.4
      1.5.6.3
      1.5.6.2
      1.5.6.1
      1.5.6
      1.5.4.1
      1.5.3.1 ocStore 3.0
      2.3
      2.2
      2.1
      1.5.5.1.2
      1.5.5.1.1
      1.5.5.1
      1.5.4.1.2
      1.5.4.1.1
      1.5.4.1
      1.5.3.1
      1.5.2.1
      1.5.1.3 OpenCart.Pro, ocShop Opencart.pro 2.3
      Opencart.pro 2.1
      OcShop 2.0.3.х
      OcShop 1.5.6.4.х Обращение к серверу разработчика Нет Старая цена 0  
    • By markimax
      Данный FIX заставляет Opencart работать корректно с обоими протоколами одновременно, как того требует Яндекс какое то время, при переезде на HTTPS.
      При запросе http:// - фикс будет отдавать все ссылки http
      При запросе https:// - будет отдавать все ссылки https
      Даже если эти ссылки были в ручную написаны в текстах или, к примеру для баннеров.
      После склейки http и https, советую в htaccess настроить редирект 301 с http на https, чтобы ссылки магазина работали только по https протоколу
      Для правильной работы фикса у вас должны отличаться HTTP_CATALOG и HTTPS_CATALOG в config.php.
       
    • By markimax
      Грамотный перевод магазина на протокол HTTPS
       
       
    • By markimax
      1 490.00 руб
      Скачать/Купить дополнение


      Перевод магазина на протокол HTTPS
      Грамотный перевод магазина на протокол HTTPS
       
       
      Добавил markimax Добавлено 29.01.2017 Категория Услуги  
  • Recently Browsing   0 members

    No registered users viewing this page.

×

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.