0 Пользователей и 1 Гость просматривают эту тему.
  • 9 Ответов
  • 2663 Просмотров
*

x1

  • Давно я тут
  • 617
  • 15 / 0
  • Linux — это Windows для бытовой техники
Столкнулся с проблемой, просьба помочь, в инете решения не нашел, т.е. решения вроде как есть, но у меня они не работают.
Перевел сайт (j3.9.4) на протокол HTTPS, SEF включен. Выяснилось, что часть страниц перестала отображать содержимое iframe.
В iframe источником src указаны страницы с другого сайта, который работает по протоколу HTTP и соответсвенно SSL запрещает их загрузку.
Я пошел по пути перевести эти страницы сайта с iframe с режима HTTPS на HTTP с переадрессацией в .htaccess
Но ничего не получается. Как быть, у кого то получилось решить эту проблему ?

*

Technic

  • Захожу иногда
  • 194
  • 7 / 0
Re: HTTPS+SEF и IFRAME+HTTP, как совместить?
« Ответ #1 : 12.04.2019, 09:50:37 »
решал подобную проблему заменой http на https  в айфреймах
все работает,
но тут надо смотреть
проведите эксперимент на 1 примере
*

x1

  • Давно я тут
  • 617
  • 15 / 0
  • Linux — это Windows для бытовой техники
Re: HTTPS+SEF и IFRAME+HTTP, как совместить?
« Ответ #2 : 12.04.2019, 09:52:11 »
В iframe предлагают убирать http. Получается например //site.com
Но у меня не срабатывает. Нельзя ли ссылку скинуть кусок вашего кода из htaccess?
« Последнее редактирование: 12.04.2019, 09:56:44 от x1 »
*

Technic

  • Захожу иногда
  • 194
  • 7 / 0
Re: HTTPS+SEF и IFRAME+HTTP, как совместить?
« Ответ #3 : 12.04.2019, 09:55:22 »
я не делал в htaccess
просто в коде айфрейма менял http на https
для фильмов работает
*

sivers

  • Живу я здесь
  • 2464
  • 335 / 0
Re: HTTPS+SEF и IFRAME+HTTP, как совместить?
« Ответ #4 : 12.04.2019, 10:16:04 »
В iframe источником src указаны страницы с другого сайта, который работает по протоколу HTTP и соответсвенно SSL запрещает их загрузку.
Я пошел по пути перевести эти страницы сайта с iframe с режима HTTPS на HTTP с переадрессацией в .htaccess
Но ничего не получается. Как быть, у кого то получилось решить эту проблему ?
Блочит браузер, а не SSL, но это к слову.
Для начала надо проверить не работают ли сайты-источники через HTTPS (на всякий случай - чтоб не ломиться в открытую дверь).
Если все же только HTTP, то можно сделать у себя проксирующий скрипт и перенаправить на него загрузку этих страниц. Скрипт будет лежать у вас, поэтому запрос из браузера пойдет через https, а сам скрипт загрузит с источника по http и отдаст браузеру.
Вот тут ссылка, где описан такой метод (хотя JS там считаю лишним):
Спойлер
[свернуть]
Вот только с изображениями может возникнуть проблема при таком подходе. И с остальными подгружаемыми ресурсами (js,css,media-файлами). Но, если вы забираете просто текст, то должно работать.
На связи в telegram @sivers
sivers @ inbox . ru
https://sivers.su/
*

x1

  • Давно я тут
  • 617
  • 15 / 0
  • Linux — это Windows для бытовой техники
Re: HTTPS+SEF и IFRAME+HTTP, как совместить?
« Ответ #5 : 12.04.2019, 10:18:10 »
Вот тут ссылка,
Спасибо, сейчас буду пробовать.
*

x1

  • Давно я тут
  • 617
  • 15 / 0
  • Linux — это Windows для бытовой техники
Re: HTTPS+SEF и IFRAME+HTTP, как совместить?
« Ответ #6 : 15.04.2019, 14:50:34 »
Решение не подошло. Проблема оказалась намного сложнее. Если необходимо отобразить страницу в iframe с возможностью навигации, а не её скриншот, то единственое решение - это переключить вывод текушей стрнаницы своего сайта с пртотокола https на http.
Вторая проблема - необходимость очистить куки в броузере:

Код

## Mod_rewrite in use.
RewriteEngine On
RewriteBase /

# Отключение отдельной страницы about
RewriteCond %{REQUEST_URI} about
RewriteCond %{HTTPS} on
<IfModule mod_headers.c>
        Header set Access-Control-Allow-Origin *
</IfModule>
RewriteRule ^(.*)$ http://mysite.com/about\.html [R=301,L]

# Отключение категории mycategory
RewriteCond %{REQUEST_URI} /mycategory/
<FilesMatch "\.(js|css|jpg|png|jpeg|gif|xml|json|txt|pdf|mov|avi|otf|woff|ico|swf)$">
        RequestHeader unset Cookie
        Header unset Cookie
        Header unset Set-Cookie
</FilesMatch>
RewriteCond %{HTTPS} on
<IfModule mod_headers.c>
        Header set Access-Control-Allow-Origin *
</IfModule>
RewriteRule ^mycategory/(.*)$ http://mysite.org/mycategory/$1 [R=permanent,L]

К сожалению код заработал только На localhost, а на хостинге идет ошибка too many redirects.
Т.е. вопрос в следующем, как на хостинге дать редирект с https на http для отдельной категории материалов при включенном SEF?
Хостинг: Virtual server
« Последнее редактирование: 15.04.2019, 14:54:38 от x1 »
*

ProtectYourSite

  • Живу я здесь
  • 2356
  • 135 / 4
  • Безопасность вебсайтов
Re: HTTPS+SEF и IFRAME+HTTP, как совместить?
« Ответ #7 : 15.04.2019, 16:03:39 »
Или логи смотрите, или комментирует строки, найдите для начала, что циклит редирект
*

sivers

  • Живу я здесь
  • 2464
  • 335 / 0
Re: HTTPS+SEF и IFRAME+HTTP, как совместить?
« Ответ #8 : 15.04.2019, 16:08:06 »
К сожалению код заработал только На localhost, а на хостинге идет ошибка too many redirects.
это бесконечный редирект. Скорее всего на хостинге у вас включена автоматическая переадресация с http на https, поэтому так и получается.
Еще вариант - кэш браузера. Он запоминает, что страница открывалась через https и потом отказывается заходить на нее через http (самостоятельно редиректит). В этому случае на сервере редирект, указанный выше, может быть отключен, а проблема сохранится. Надо проверить браузером, через который еще не заходили на страницы по https.
На связи в telegram @sivers
sivers @ inbox . ru
https://sivers.su/
*

x1

  • Давно я тут
  • 617
  • 15 / 0
  • Linux — это Windows для бытовой техники
Re: HTTPS+SEF и IFRAME+HTTP, как совместить?
« Ответ #9 : 17.04.2019, 12:53:02 »
Итак решение, когда нужно на странице HTTPS в iframe отобразить полноценное содержимое HTTP, почти пошаговая инструкция:
1) Получаем SSL-сертификат: создаем аккаунт и регистрируем свой домен на сайте https://www.cloudflare.com/a/sign-up.
2) У регистратора своего домена меняем NS-сервера на новые, те, что вам даст CloudFare.
3) Настраиваем Joomla.
Подробная инструкция здесь, 5 минут на все 3 пункта:
https://www.joomlatools.com/blog/tutorials/how-to-use-https-on-joomla-with-cloudflare-ssl
4) Ждёте (они пишут до 24 часов), когда сертификат подключится, после чего можно переводить часть страниц сайта с HTTPS на HTTP. На вкладке Page Rules для конкретной страницы или целой категории материалов указываете правило без http:// :
Код
yoursite.com/yourcategory/*
Disable Security
5) Мне больше понравилось отключать в .htaccess
HTTP для категории yourcategory:
Код
<IfModule mod_env.c>
SetEnv HTTPS on
</IfModule>
RewriteCond %{REQUEST_URI} /yourcategory/
RewriteCond %{HTTPS} on
<IfModule mod_headers.c>
    Header set Access-Control-Allow-Origin *
</IfModule>
RewriteRule ^yourcategory/(.*)$ http://yoursite.com/yourcategory/$1 [R=permanent,L]
HTTP для отдельной страницы:
Код
RewriteCond %{REQUEST_URI} about
RewriteCond %{HTTPS} on
<IfModule mod_headers.c>
    Header set Access-Control-Allow-Origin *
</IfModule>
RewriteRule ^(.*)$ http://yoursite.com/about\.html [R=301,L]

Возможно понадобится очистка кук (вставить после первой строки):
Код
<FilesMatch "\.(js|css|jpg|png|jpeg|gif|xml|json|txt|pdf|mov|avi|otf|woff|ico|swf)$">
    RequestHeader unset Cookie
    Header unset Cookie
    Header unset Set-Cookie
</FilesMatch>
Осталась проблема с отображением иконок Font Awesome, но уже на стороне HTTPS: на localhost шрифт грузится, на хостинге  - нет. найду решение - выложу.
Разумеется это все для бесплатного сертификата.
« Последнее редактирование: 17.04.2019, 13:06:10 от x1 »
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как подружить sh404SEF с поддоменом через htaccess на httpS?

Автор Dim

Ответов: 0
Просмотров: 1308
Последний ответ 10.12.2018, 23:23:03
от Dim
Ошибка при переходе с http на https

Автор galll72

Ответов: 14
Просмотров: 1250
Последний ответ 01.11.2018, 13:32:34
от galll72
Редирект с http на https в Mambo 4.5 ((1.0.9))

Автор Vaska

Ответов: 0
Просмотров: 1066
Последний ответ 19.08.2018, 16:01:34
от Vaska
Как настроить 310 ред с http на https?

Автор Anna01

Ответов: 0
Просмотров: 908
Последний ответ 02.09.2017, 12:00:47
от Anna01
Удалил Artio JoomSEF получил HTTP 500 (Internal Server Error)

Автор nalog

Ответов: 2
Просмотров: 1758
Последний ответ 27.12.2012, 12:44:31
от KKAAZZOO