Итак, вам в ссылку нужно на странице сайта передать точное значение протокола передачи данных http или https. Если вы поставите в ссылку просто http, но на вашем сайте используется шифрование с сертификатом SSL, и протокол в ссылке, соответственно, будет иметь вид https, на страницу данные, которые используют простой, незащищённый http, передаваться не будут. Иными словами, информация по незащищенному каналу, если ваш сайт использует сертификат SSL, передана не будет, и, соответственно, содержимое страницы будет отображено криво-косо, а не так, как вы того хотели.
В админпанели CMS Joomla! есть соответствующий переключатель, который определяет, по какому протоколу (защищенному или не защищенному) будет происходить общение между пользователем и вашим сайтом. Этот переключатель находится «Система->Общие настройки->Сервер->Включить SSL».
Как правило, если ваш домен имеет SSL-сертификат, он используется и в админпанели, и на самом сайте. Соответственно, вышеуказанный переключатель должен быть установлен в положение «Весь сайт».
Если же переключатель «Включить SSL» установлен в иное положение, кроме указанного выше, обмен информацией, которая включает в себя и регистрационные данные пользователей (и ваши в т.ч.) и пароли, будет проходить по незащищённому каналу.
Итак, как же определить и передать в ссылку значение защищенного/не защищенного соединения?
Для этого выносим нижеприведенный код в отдельный файл.
<?
/**
* @package «ArtInWeb.biz» - Full Stack Web Development
* @subpackage file ssl_on_off.php
*
* @copyright Copyright (C) 2004 - 2018 «ArtInWeb.biz», Inc. All rights reserved.
* @license MIT
*/
defined('_JEXEC') or die;
if (!isset($protocol)) {
$ssl = JFactory::getApplication()->get('force_ssl');
if ($ssl == 0 || $ssl == 1) {
$protocol = 'http://';
} else {
$protocol = 'https://';
}
} else {
$protocol = &$protocol;
}
// include JPATH_ROOT . "/templates/your_template/include/ssl_on_off.php";
Из приведенного кода следует, что используя код:
$ssl = JFactory::getApplication()->get('force_ssl');
…мы получаем значение из файла конфигурации CMS Joomla! Если переменная $ssl принимает значение «0» или «1» – передача данных между пользователем и сервером вашего сайта проходит по не защищённому протоколу http. Во всех остальных случаях, по защищённому протоколу https.
Если вы уже зарегистрированы на этом сайте, или уже оставляли здесь свои комментарии, отзывы, заявки на участие в акциях, чтобы добавить ещё один комментарий – авторизуйтесь
Добавить комментарий