Новости Joomla

Загадочный параметр $live_site в configuration.php Joomla

Загадочный параметр $live_site в configuration.php Joomla

Давным-давно, когда Joomla ещё была маленькой, в неё внедрили параметр $live_site. В ней хранился домен текущего сайта на случай, если Joomla не могла его определить из-за неверной настройки сервера. Нужно это было для разных SEO-компонентов, для использования редиректов и т.д.

Со временем для работы собственно сайта этот параметр перестал быть нужным. Уже в начале 2010-х стали встречаться рекомендации оставлять этот параметр пустым, дабы оный не привёл к лишним проблемам и путанице. Тем более, в web-админке нет места, где его можно указать или посмотреть его значение. Только в configuration.php, а туда смотрят не часто.

Однако, параметр всё же остался в ядре Joomla. Зачем он нужен? А нужен он в 2-х случаях:

  • для работы класса Joomla\CMS\Uri\Uri, который часто используется в коде Joomla для работы методов
    Uri::root() и
    Uri::base(), а значит может влиять и на работу в том числе ajax-скриптов.
  • для работы Joomla в CLI - командной строке сервера. В случае если вы используете в вашем CLI-плагине методы опять-таки класса Uri, то CLI ничего не знает о текущем домене, так как запускается вне web-сервера.

Поэтому домен нужно указывать принудительно. Либо с помощью параметра командной строки

--live-site, например,
—live-site=https://site.ru/. Со слешем на конце, иначе в CLI адрес сайта станет
https://site.rujoomla.php.Либо в параметре
$live_site в файле configuration.php, так как
CliApplication берёт настройку оттуда, если параметр команды не указан или пуст.

⚠️ Иначе в качестве хоста и url класса Uri будет установлено https://joomla.invalid/set/by/console/application. В самом же коде команды получить параметр

$live_site можно из объекта приложения

<?php protected function doExecute(InputInterface $input, OutputInterface $output): int { //... $live_site = $this->getApplication()->get('live_site'); //... }

и исходя из этого строить дальнейшую логику.

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

slepoy

  • Давно я тут
  • 753
  • 24 / 0
  • Тотальная шизофазия
Как запретить на сторонних сайтах показ изображений, размещенных на моем сайте, не испортив при этом "отношения" с images.yandex.ru, images.google.com?

Есть следующий рецепт: нужно добавить в .htaccess строки:
Цитировать
RewriteEngine on
 RewriteCond %{REQUEST_FILENAME} .*jpg$|.*gif$|.*png$|.*jpeg$ [NC]
 RewriteCond %{HTTP_REFERER} !^$
 RewriteCond %{HTTP_REFERER} !мойсайт.ru [NC]
 RewriteCond %{HTTP_REFERER} !yandex.ru [NC]
 RewriteCond %{HTTP_REFERER} !google. [NC]
 RewriteCond %{HTTP_REFERER} !search?q=cache [NC]
 RewriteRule (.*) error.gif
Насколько это корректно? Файл "error.gif" необходимо разместить в корне сайта?
Спасибо.
Помог? Поставь(те) плюс в репутацию.
*

volod3000

  • Захожу иногда
  • 379
  • 51 / 0
  • Чтобы ничего не делать, нужно многое сделать.
Вот набрел, на одном форуме, на полезную для Вас информацию, да думаю и другим
желающим защитить свой трафик пригодиться .

Как заблокировать показ картинок на других сайтах:
Спасибо автору Jefa (Moderator форума searchengines)

Спойлер
[свернуть]
« Последнее редактирование: 20.08.2012, 17:52:27 от volod3000 »
Мало открыть человеку глаза,
большинство еще просит указать дорогу
и ждет волшебного пенделя.
*

slepoy

  • Давно я тут
  • 753
  • 24 / 0
  • Тотальная шизофазия
Спасибо. А как открыть доступ яндексу?
Цитировать
RewriteCond %{HTTP_REFERER} !^http://(www\.)?yandex\.ru/ [nc]
Помог? Поставь(те) плюс в репутацию.
*

volod3000

  • Захожу иногда
  • 379
  • 51 / 0
  • Чтобы ничего не делать, нужно многое сделать.
Это Вам поможет !

http://selkinvitaly.ru/article7.html


В Вашем случае, приблизительно так :

Цитировать
# Запретить другим сайтам использовать прямые ссылки на ваши картинки
RewriteCond %{HTTP_REFERER} !^$
# Дальше список разрешенных доменов
RewriteCond %{HTTP_REFERER} !^http://(www\.)?вашсайт\.ru/ [nc]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www.)?yandex.ru [nc]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www.)?google. [nc]
# RewriteCond %{HTTP_REFERER} !^http(s)?://(www.)?домен_дружественного сайта.ru [nc]
# Форматы файлов, для которых устанавливается защита
# Выводит ошибку 403
# RewriteRule \.(jpe?g|bmp|gif|png|css|mov|swf|dcr|exe|rar|avi|vob|zip|pdf|txt|doc|flv|mp3|mp4)$ - [nc,F,L]
# или показывает спецрисунок вместо указанного
RewriteRule .*\.(jpe?g|bmp|gif|png)$ images/nohotlink.jpg [nc,L]
#или
#RewriteRule .*\.(gif|jpg|png)$ http://вашсайт.ru/images/hotlinkers.jpg [nc]
« Последнее редактирование: 20.08.2012, 21:51:03 от volod3000 »
Мало открыть человеку глаза,
большинство еще просит указать дорогу
и ждет волшебного пенделя.
*

anis

  • Захожу иногда
  • 130
  • 1 / 0
Чтоб не постить еще одну тему подниму эту
скажите пожалуйста

прописал в .htaccess следующее
Цитировать
RewriteEngine On
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?имя.kh\.ua*$ [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www.)?google. [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www.)?yandex. [NC]
RewriteRule .*\.(gif|jpe?g|png)$ [NC]

хотелось бы чтоб если указываешь на стороннем ресурсе верный линк на картинку с моего сайта шло бы правило перенаправления на картинку

сейчас же это работает следующим образом
если указана не верная картинка с моего сайта то идет перенаправления на картинку
если же указать верную картинку то никакого перенаправления нет, а просто октрывается картинка
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Можно ли запретить суперюзеру смену пароля?

Автор Konstantin124

Ответов: 48
Просмотров: 3292
Последний ответ 08.01.2020, 14:21:40
от ProtectYourSite
Бесплатная защита сайта от взлома, парсеров, DDoS и других кибератак

Автор Core System

Ответов: 16
Просмотров: 3021
Последний ответ 09.06.2018, 14:58:54
от Core System
Запретить смену прав на index.php - Joomla

Автор magrychev

Ответов: 5
Просмотров: 2674
Последний ответ 24.10.2017, 21:14:24
от winstrool
Появление материалов на сайтах Joomla 2.5

Автор Leo1986

Ответов: 18
Просмотров: 1136
Последний ответ 21.08.2016, 00:12:34
от flyingspook
Защита Joomla. Как запретить заливать файлы в корень сайта!

Автор Elimelech

Ответов: 36
Просмотров: 4381
Последний ответ 23.02.2015, 13:49:12
от Elimelech