В Структура сайта делаю Доступ через HTTPS но после этого пропадает доступ к сайту

#
В Структура сайта делаю Доступ через HTTPS но после этого пропадает доступ к сайту
Сайт site.com выполнил переадресацию слишком много раз.
Попробуйте сделать следующее:
Обновите страницу.
Удалите файлы cookie.

Пробовал и так https://www.hostcms.ru/documentation/modules/core/https/
И требование все выполнены

Но все это не помогает. Как только отключаю все работает. Перерыл интернет не помогло и решил написать
Кто сталкивался с проблемой поделитесь пожалуйста с решением?
E-mail: info@syrbek.ru / телега: @syrbek /skype: activexm / syrbek.ru / Поддержка сайтов / г. Москва [HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, Git, SVN, Redmine]
#
Re: В Структура сайта делаю Доступ через HTTPS но после этого пропадает доступ к сайту
Проблема связано с применением модулем /modules/core/utils.php
Вот кусок кода где определяется протокол доступа:
// получим главный алиас текущего сайта
      $oSite_Alias = Core_Entity::factory('Site', CURRENT_SITE)->getCurrentAlias();
      if($oSite_Alias) {

         // определим метод доступа у текущему узлу структуры, http или https
         $oStructure = Core_Entity::factory('Structure', CURRENT_STRUCTURE_ID);
         $scheme = $oStructure->https ? 'https' : 'http';

         // дополняем относительную ссылку до абсолютной
         $sLink = $scheme. '://' . $oSite_Alias->alias_name_without_mask . $sLink;
      }

Для того чтобы был https надо в админке в Структуре сайта ставить галочку Доступ через HTTPS
E-mail: info@syrbek.ru / телега: @syrbek /skype: activexm / syrbek.ru / Поддержка сайтов / г. Москва [HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, Git, SVN, Redmine]
Модератор
#
Re: В Структура сайта делаю Доступ через HTTPS но после этого пропадает доступ к сайту
Стандартно такого файла нет в поставке системы управления, у нас используется метод Core::httpsUses(), также рекомендуем обновиться до последней версии системы управления.
#
Re: В Структура сайта делаю Доступ через HTTPS но после этого пропадает доступ к сайту
HostCMS писал(а):
Стандартно такого файла нет в поставке системы управления, у нас используется метод Core::httpsUses(), также рекомендуем обновиться до последней версии системы управления.

С этим все понятно, можно использовать Core::httpsUses()
Но все же остается вопрос по редиректу страницы с http на https

Может напишите порядок переключение HostCMS с http на https, спасибо
E-mail: info@syrbek.ru / телега: @syrbek /skype: activexm / syrbek.ru / Поддержка сайтов / г. Москва [HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, Git, SVN, Redmine]
#
Re: В Структура сайта делаю Доступ через HTTPS но после этого пропадает доступ к сайту
Seri,
во-1х, вы как-то странно используете функцию getCanonicalUrl() из моего модуля Core_Utils.
По идее, ее единственное предназначение - это получение значение для meta-тега canonical, который сам по себе не приводит ни к какому редиректу, а просто сообщает поисковикам, какой урл считать основным для данной страницы.
Покажите, как вы вызываете эту функцию?

Во-2х, сам вопрос "напишите порядок переключение HostCMS с http на https" - ответ на него очень прост, нужно всем узлам структуры выключить галочку доступ по https, и система сама будет перенаправлять пользователей с http на https, потому что в файле /modules/core/command/controller/default.php есть код
// Если доступ к узлу структуры только по HTTPS, а используется HTTP, то делаем редирект
if ($oStructure->https == 1 && !Core::httpsUses())
{
   $url = str_replace(array("\r", "\n"), '', Core::$url['host'] . $this->_uri);

   $oCore_Response
      ->status(302)
      ->header('Location', 'https://' . $url);

   return $oCore_Response;
}

И тут как раз подозрения на то, что у вас на сервере как-то не правильно настроен https, и функция Core::httpsUses() никогда не принимает значение true, даже если доступ на самом деле запрашивается через https
Вот код этой функции:
static public function httpsUses()
{
   return Core_Array::get($_SERVER, 'SERVER_PORT') == 443 || Core_Array::get($_SERVER, 'HTTP_PORT') == 443
      || strtolower(Core_Array::get($_SERVER, 'HTTPS')) == 'on' || Core_Array::get($_SERVER, 'HTTPS') == '1'
      || strtolower(Core_Array::get($_SERVER, 'HTTP_X_FORWARDED_PROTO')) == 'https';
}

Проверьте, выполняются ли эти условия, например, запросив phpinfo() по https.
Заказов не беру. Консультирую редко.
#
Re: В Структура сайта делаю Доступ через HTTPS но после этого пропадает доступ к сайту
Kotoff писал(а):
Kotoff

Спасибо, за отклик. К сожалению времени не хватило на разбирательство в связи с другими проектами. Люди обратились в поддержку. Поддержка все настроила на уровне админки, как мне стало известно. К сожалению подробности не имею.
Вопрос снять, всем спасибо.  
E-mail: info@syrbek.ru / телега: @syrbek /skype: activexm / syrbek.ru / Поддержка сайтов / г. Москва [HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, Git, SVN, Redmine]
#
Re: В Структура сайта делаю Доступ через HTTPS но после этого пропадает доступ к сайту
Та же проблема, в админке включил доступ по HTTPS, доступ пропал вообще!
Что делать? Кроме того что вернуть доступ по HTTP
osf.com.ua

и еще, после перехода сервера на https, пишет - Не обнаружена система HostCMS. Попробуйте еще раз запросить обновление.
Модератор
#
Re: В Структура сайта делаю Доступ через HTTPS но после этого пропадает доступ к сайту
xelaxela13,
полагаю обратиться в поддержку
#
Re: В Структура сайта делаю Доступ через HTTPS но после этого пропадает доступ к сайту
Seri,
если Цитата:
Сайт site.com выполнил переадресацию слишком много раз.

Значит возможно проблема в настройках веб-сервера.
Например в nginx настройки должны быть указаны отдельно для https и http
HostDev.pw - модули для HostCMS, Telegram: @hostdev
Модератор
#
Re: В Структура сайта делаю Доступ через HTTPS но после этого пропадает доступ к сайту
xelaxela13,
если в структуре сайта устанавливаете доступ только по HTTPS и получаете бесконечный редирект, значит nginx + Apache настроены неверно и  со стороны системы мы наблюдаем, что работаем по HTTP и 80 порту, т.к. сведения о HTTPS на сторону бэкэнда не передаются.

Наличие HTTPS определяется следующим образом:
SERVER_PORT == 443
HTTP_PORT == 443
HTTPS == 'on' или '1'
HTTP_X_FORWARDED_PROTO == 'https'
HTTP_X_SCHEME == 'https'
HTTP_X_HTTPS == 'on' или '1'


Полагаю, что ничего из вышеперечисленного нет.

Обратитесь в поддержку хостинга с данными ответом, чтобы они корректно настроили взаимодействие и передачу информации о наличии HTTPS соединения.
Авторизация