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

vbulletinX

  • Осваиваюсь на форуме
  • 65
  • -7
недавно установили мне для сайта ssl сертификат (установила техподдержка рег.ру, где и находится сайт, т.к. по их инструкции на моем vps нельзя было установить, они сделали это в обход панели ISP Manager), и теперь возникает проблема, если в файле configuration.php не указан параметр $live_site (то есть указан вот так: $live_site = '') - в этом случае, у меня в коде сайта, если я захожу по https://site.ru, то всегда вижу в коде сайта <base href="http://site.ru/" /> , соответственно возникают проблемы с отображением сайта по протоколу https.

если же указать параметр $live_site = 'https://site.ru', то всегда по https будет указан параметр <base href="https://site.ru/" />, даже если сайт загружаю по http протоколу (ну это естественно).

в чем проблема:
если я в настройках админки Joomla 3.4.4 выбираю пункт SSL - только для админки (т.е. чтобы админка всегда грузилась по https), то я тогда не могу зайти в админку, то есть у меня не загружается страница с админкой. (если при этом указано, что $live_site = '')

хостер рег.ру, на котором VPS, вот что ответил:

Цитировать
Здравствуйте!
Данная проблема связана с циклической переадресацией CMS Вашего сайта с протокола http на https

 cURL -I https://site.ru/administrator/
HTTP/1.1 301 Moved Permanently
Server: nginx/0.8.54
Date: Tue, 15 Sep 2015 13:50:41 GMT
Content-Type: text/html; charset=utf-8
Connection: keep-alive
X-Powered-By: PHP/5.4.34
Set-Cookie: (тут были куки); path=/; secure; HttpOnly
Location: https://site.ru/administrator/


 cURL -I http://site.ru/administrator/
HTTP/1.1 301 Moved Permanently
Server: nginx/0.8.54
Date: Tue, 15 Sep 2015 13:50:53 GMT
Content-Type: text/html; charset=utf-8
Connection: keep-alive
X-Powered-By: PHP/5.4.34
Set-Cookie: (тут были куки); path=/; secure; HttpOnly
Location: https://site.ru/administrator/

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

при этом, у меня есть еще другой vps у рег.ру, где такой проблемы нет (и сертификах SSL я сам смог установить по инструкции на их сайте в панели ISP) и при параметре $live_site = '' у меня все нормально, а здесь такой параметр не подходит и надо выбирать что-то одно - или http или https....
*

vbulletinX

  • Осваиваюсь на форуме
  • 65
  • -7
в кратце:
при параметре $live_site = '' (т.е. без указания домена) в configuration.php, у сайта параметр "base href" всегда принудительно определяется по протоколу http, т.е. не работает динамическая смена параметра "base href" и надо выбирать - либо сайт по http, либо только по https делать рабочим, но такого, чтобы сайт нормально грузился по обоим протоколам - не возможно сделать.
*

vbulletinX

  • Осваиваюсь на форуме
  • 65
  • -7
Попробуйте применить этот фикс
https://github.com/joomla/joomla-cms/pull/7902/files

в файле libraries/cms/application/site.php заменил "current" на "base" в нужной строке, но не помогло, все описанные выше проблемы так и остались.
*

vbulletinX

  • Осваиваюсь на форуме
  • 65
  • -7


когда у меня $live_site = '', то я могу зайти в админку по HTTPS протоколу, но если  я опцию "Включить SSL - только для панели управления" делаю, то в панель управления больше попасть не могу, она перестает загружаться (пока на 0 не переведу параметр для SSL в файле конфигурации сайта).

вот такая вот проблема. не работает динамический base href на фронте и смена протокола в админке.
*

flyingspook

  • Профи
  • 3620
  • 236
В base href подставляется приоритетное соединение и оно если включен ssl и есть https все правильно, разработчики и не думали его делить на фронт и бэкенд. Ни кому в голову не придет что кто то будет SSL подключать частично.
По теме могу сказать что иногда есть проблема не только с движком но и с шаблонами при подключении https.
*

vbulletinX

  • Осваиваюсь на форуме
  • 65
  • -7
В base href подставляется приоритетное соединение и оно если включен ssl и есть https все правильно, разработчики и не думали его делить на фронт и бэкенд. Ни кому в голову не придет что кто то будет SSL подключать частично.
По теме могу сказать что иногда есть проблема не только с движком но и с шаблонами при подключении https.
что за БРЕД ты пишешь?

По теме могу сказать что иногда есть проблема не только с движком но и с шаблонами при подключении https.

У меня параметр base href Неправильно определяется (а в самом шаблоне все ссылки нормальные, без полных путей).

разработчики и не думали его делить на фронт и бэкенд. Ни кому в голову не придет что кто то будет SSL подключать частично.

Что касается "делить" - как раз-таки, разработчики об этом в первую очередь подумали, раз сделали такую опцию в настройках Joomla. Я в админку только по https хочу заходить, а вот сайт пусть будет с 2 протоколов доступен (тот же ВКонтакте и многие другие сайты доступны с 2 протоколов сейчас и без редиректов работают).

В base href подставляется приоритетное соединение и оно если включен ssl и есть https все правильно

если ты в Joomla не разбираешься, то зачем в тему лезешь со своими ответами? я уже выше написал, что у меня в файле конфигурации не указан домен, то есть там написано просто $live_site = '', без указания домена и протокола, то есть, по какому протоколу я захочу увидеть сайт - по тому протоколу и должен подставляться параметр "base href", но в моем случае что-то пошло не так, поэтому зашел на этот форум, возможно у кого-то такая же проблема была.

так или иначе, у меня на другом vps от рег.ру, все ОК работает при той же версии Joomla 3.4.4, а на этом vps что-то не так....
*

Филипп Сорокин

  • Практически профи
  • 1816
  • 138
Возникла такая же проблема: на одном хостинге работает хорошо, на другом хостинге base href для протокола https определяется как http. Из-за этого "летят" все стили, изображения и скрипты. Live Site переменную так же пробовал обнулять.

Попробуйте применить этот фикс
https://github.com/joomla/joomla-cms/pull/7902/files

Этот фикс нужно повторять после каждого обновления?
« Последнее редактирование: 22.11.2015, 20:53:50 от Филипп Сорокин »
Ставь лайк, если согласен, и делай репост!

  => мои публикации
    => мои работы
      => спектр моих услуг
*

fbr

  • Живу я здесь
  • 1283
  • 142
Попробуйте применить этот фикс
https://github.com/joomla/joomla-cms/pull/7902/files
b2z, спасибо.
Работает))

Но тем не менее остается вопрос:
В версии 3.4.5 все работало без хака, на https
При обновлении до 3.4.6(7) - стили и скрипты слетели, стали подключаться по http
Какие изменения могли повлиять?

Код: html4strict
(index):1 Mixed Content: The page at 'https://site-name.ru/' was loaded over HTTPS, 
but requested an insecure script 'http://site-name.ru/media/jui/js/jquery.min.js'.
This request has been blocked; the content must be served over HTTPS.
*

fbr

  • Живу я здесь
  • 1283
  • 142
Странно все это .. Мистика
*

denverkurt

  • Осваиваюсь на форуме
  • 110
  • 24
Циклическая переадресация может возникать если на сервере работает связка Nginx + Apache

в таком случае нужно в файле /libraries/joomla/uri/uri.php заменить строку:
Код
if (isset($_SERVER['HTTPS']) && !empty($_SERVER['HTTPS']) && (strtolower($_SERVER['HTTPS'])!= 'off'))
на:
Код
if (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https')

патч нужно применять после каждого обновления
« Последнее редактирование: 06.02.2016, 12:08:51 от denverkurt »
https://denvera.net - бесплатные расширения для Joomla. Разработка расширений на заказ
*

SolopoV

  • Завсегдатай
  • 476
  • 12
  • зеленею...
Мне вот этот костыль помог:

if (isset($_SERVER['HTTPS']) && !empty($_SERVER['HTTPS']) && (strtolower($_SERVER['HTTPS'])!= 'off'))
{
$https = 's://';
}
else
{
$https = 's://';
}
*

denverkurt

  • Осваиваюсь на форуме
  • 110
  • 24
Мне вот этот костыль помог:

if (isset($_SERVER['HTTPS']) && !empty($_SERVER['HTTPS']) && (strtolower($_SERVER['HTTPS'])!= 'off'))
{
$https = 's://';
}
else
{
$https = 's://';
}
но в этом случае принудительно все ссылки преобразуются в https
в некоторых случаях это может быть нежелательно
https://denvera.net - бесплатные расширения для Joomla. Разработка расширений на заказ
*

SolopoV

  • Завсегдатай
  • 476
  • 12
  • зеленею...
но в этом случае принудительно все ссылки преобразуются в https
в некоторых случаях это может быть нежелательно
"Некоторые" - это какие?
*

denverkurt

  • Осваиваюсь на форуме
  • 110
  • 24
Когда доступ нужен именно по http
https://denvera.net - бесплатные расширения для Joomla. Разработка расширений на заказ
*

SolopoV

  • Завсегдатай
  • 476
  • 12
  • зеленею...
Когда доступ нужен именно по http
Куда же нужен доступ по http, если сайт переведен на s, ... понять  не могу.
*

denverkurt

  • Осваиваюсь на форуме
  • 110
  • 24
Куда же нужен доступ по http, если сайт переведен на s, ... понять  не могу.
Настоящий программист должен предусмотреть все варианты. Даже если СЕЙЧАС это кажется вам излишним и абсурдным.
А вы своими костылями подаете плохой пример программирования другим ***кодерам
https://denvera.net - бесплатные расширения для Joomla. Разработка расширений на заказ
*

SolopoV

  • Завсегдатай
  • 476
  • 12
  • зеленею...
Настоящий программист должен предусмотреть все варианты. Даже если СЕЙЧАС это кажется вам излишним и абсурдным.
А вы своими костылями подаете плохой пример программирования другим ***кодерам
Смотреть нужно в корень, в причину, а не на действия. Мне ничего не кажется и  без этого костыля не работает. А Вы, сударь, можете тут продолжать свой танец с бубном.
*

denverkurt

  • Осваиваюсь на форуме
  • 110
  • 24
Это у вас танцы с бубнами и действия методом тыка.
Я же предложил обоснованный вариант решения проблемы.
Но вам ваш вариант нравится больше и вы задаете бестолковые вопросы. Сударь
https://denvera.net - бесплатные расширения для Joomla. Разработка расширений на заказ
*

Taatshi

  • Support Team
  • 4805
  • 453
  • Верстаем и немножко кодим. Обращайтесь ;)
если сайт переведен на https - загрузка по http не должна производится. Необходимо писать редирект с http на https. Для поисковика это разные адреса - вы получите полный дубль Вашего сайта. Сеошники Вас загрызут.
ВЕРСТКА, САЙТЫ ПОД КЛЮЧ, УДАЛЕНИЕ ВИРУСОВ, МИГРАЦИЯ НА JOOMLA 3  /  ОТЗЫВЫ 
Минимальная ставка за платные услуги 1000 рэ Связь: telegram - Taatshi, почта - Taatshi на яндексе.
*

denverkurt

  • Осваиваюсь на форуме
  • 110
  • 24
ну так и пишите себе в .htaccess редиректы наздоровье
я лишь запостил как правильно должно быть реализовано в PHP коде. Вижу многих это задело за живое? в чем проблема то? что так закопошились?
нравится вам дописывать httpS ну и дописывайте дальше наздоровье, гении программирования
https://denvera.net - бесплатные расширения для Joomla. Разработка расширений на заказ
*

vbulletinX

  • Осваиваюсь на форуме
  • 65
  • -7
если сайт переведен на https - загрузка по http не должна производится. Необходимо писать редирект с http на https. Для поисковика это разные адреса - вы получите полный дубль Вашего сайта. Сеошники Вас загрызут.

есть тег rel="canonnical" и никакого дубля никто не получит, а получит 2 работающие версии сайта по разным протоколам, но с одной главной ссылкой в поисковике. СЕОшники такое одобрят руками и ногами.
*

SolopoV

  • Завсегдатай
  • 476
  • 12
  • зеленею...
Пришло время ответить на вопрос как безболезненно переехать на защищенный протокол.

1. Устанавливаем сертификат на сервер.
2. Делаем доступ по двум протоколам http и https
В Joomla, плагинах, модулях и компонентах попадает код, который подтягивается только через http, придется попотеть и исправить все эти вещи.

К примеру:

<script src="http://www.xxxxxx.ru/plugins/system/bdthemes_shortcodes/js/shortcode-ultimate.js" type="text/javascript"></script>

переписываем под:

<script src="//www.xxxxxx.ru/plugins/system/bdthemes_shortcodes/js/shortcode-ultimate.js" type="text/javascript"></script>

Аналогично с картинками, ссылками и т.п.

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

3. Идем в Яндекс Вебмастер и в Google консоль и добавляем новые зеркала с https, делаем их главными + в robots.txt указываем главное зеркало с https

4. Ждем "прихода"

Приход приходит долго :), особенно от Яндекс.

Гугл выдаст результаты уже через 2 недели без потери PR
Яндекс сразу обнулит ТИЦ и выдаст результаты через месяц, спустя ещё месяц восстановит ТИЦ.

Проверено на 2 живых интернет магазинах. При переезде использовалась переписка с Платонами.

Никаких редиректов не использовалось.
« Последнее редактирование: 23.04.2016, 17:30:32 от SolopoV »
*

denverkurt

  • Осваиваюсь на форуме
  • 110
  • 24
Цитировать
переписываем под:

<script src="//www.xxxxxx.ru/plugins/system/bdthemes_shortcodes/js/shortcode-ultimate.js" type="text/javascript"></script>
зачем статично прописывать адрес сайта и потом в случае чего лазить по всем папкам и исправлять?
достаточно прописать так:
Код
<script src="plugins/system/bdthemes_shortcodes/js/shortcode-ultimate.js" type="text/javascript"></script>
а ваш формат имеет смысл для внешних ресурсов расположенных на других сайтах
https://denvera.net - бесплатные расширения для Joomla. Разработка расширений на заказ
*

SolopoV

  • Завсегдатай
  • 476
  • 12
  • зеленею...
зачем статично прописывать адрес сайта и потом в случае чего лазить по всем папкам и исправлять?
достаточно прописать так:
Код
<script src="plugins/system/bdthemes_shortcodes/js/shortcode-ultimate.js" type="text/javascript"></script>
а ваш формат имеет смысл для внешних ресурсов расположенных на других сайтах

Повторяюсь: некоторые плагины, компонеты или модули так устроены. Не я их писал :)
Может быть стоит указвать как Вы пишите, мне без разницы.

*

denverkurt

  • Осваиваюсь на форуме
  • 110
  • 24
Joomla сама допишет нужный протокол и путь к папке (если дужмла стоит не в корне а где то в дочерних папках)
и на будущее отпадет необходимость править пути в тех местах. сама Joomla подгружает системные CSS и js таким же способом
https://denvera.net - бесплатные расширения для Joomla. Разработка расширений на заказ
*

iRaptor

  • Осваиваюсь на форуме
  • 37
  • 0
Циклическая переадресация может возникать если на сервере работает связка Nginx + Apache

в таком случае нужно в файле /libraries/joomla/uri/uri.php заменить строку:
Код
if (isset($_SERVER['HTTPS']) && !empty($_SERVER['HTTPS']) && (strtolower($_SERVER['HTTPS'])!= 'off'))
на:
Код
if (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https')

патч нужно применять после каждого обновления

Спасибо! Помог Ваш способ.

Хочу отдельно сказать что такие танцы применяю впервые. Другие сайты на этом же шаблоне, но на другом хостинге запустились без всей этой кодовшины. Прописал в форму сертификат, редирект в .htaccess и сайт поехал.
*

denverkurt

  • Осваиваюсь на форуме
  • 110
  • 24
если на другом хостинге все работает, значит там один Apache, без Nginx
https://denvera.net - бесплатные расширения для Joomla. Разработка расширений на заказ
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Проблема после обновления до 3.8

Автор filoleg

Ответов: 0
Просмотров: 30
Последний ответ 23.09.2017, 20:11:34
от filoleg
Проблема с админ панелей после обновления

Автор virtual-3

Ответов: 9
Просмотров: 139
Последний ответ 14.09.2017, 18:26:00
от virtual-3
Проблема с SQL после обновлений

Автор SergioTM

Ответов: 5
Просмотров: 147
Последний ответ 21.08.2017, 13:43:25
от SergioTM
Проблема с http и https

Автор Dream777

Ответов: 6
Просмотров: 127
Последний ответ 10.08.2017, 22:25:29
от dmitry_stas
Проблема jdownloads в SP Page builder

Автор vlmedia

Ответов: 0
Просмотров: 130
Последний ответ 26.07.2017, 14:01:25
от vlmedia