Новости Joomla

Вышли релизы безопасности Joomla 6.1.1 и Joomla 5.4.6

Релиз безопасности Joomla 6.1.1 и Joomla 5.4.6

Проект Joomla! рад сообщить о выходе Joomla 6.1.1 и Joomla 5.4.6. Это релизы безопасности и исправления ошибок для серий 5.x и 6.x.

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

roga_i_kopita

  • Осваиваюсь на форуме
  • 32
  • 4 / 0
Всех приветствую.

Собственно вопрос в заголовке темы.

Задумка такова, чтобы весь статичный контент запрашивался с другого домена, где отключены cookies. При этом работаем фактически с файловой структурой одного и того же сайта, просто статичные ресурсы могут быть запрошены через два разных доменных имени у двух разных виртуальных серверов (с разными настройками выдачи http-заголовков).

По этому необходимо сделать так, чтобы все формируемые пути к ресурсам (скрипты, стили, рисунки и т.п.) от всех компонентов, модулей и плагинов, как идущих в инсталляционном пакете, так и сторонних, как-то перехватывались средствами Joomla и переопределялись из относительных и URL к виду:
http://static.<?php echo basename($_SERVER['DOCUMENT_ROOT'])?>/.../.../.../script.js.
Т.е. как-то "на лету" нужно менять baseurl для всех .js, .css, .png, .jpg и т.п.

Такое возможно? Если знаете, то как?

Душевно благодарю.

P.S.: разумеется в поиске ковырялся, но ни на форуме, ни в Яндексе ответа не нашёл.
*

b2z

  • Глобальный модератор
  • 7288
  • 778 / 0
  • Разраблю понемногу
Доброе утро!

Можно попробовать написать свой плагин, и в нем перехватывать и изменять все эти ссылки. Тут можно почитать про создание плагина.
*

roga_i_kopita

  • Осваиваюсь на форуме
  • 32
  • 4 / 0
Благодарю за ответ.

Свой плагин - это здОрово. Непременно буду экспериментировать в свободное время.
Но мысль идёт по пути минимизации затрачиваемых усилий.

Все компоненты, плагины и модули "пихаю" свои ссылки на стили и скрипты в head.
Соответственно задача сужается.
Нужно "распарсить" <head> и заменить все url и относительные пути на url с новым baseurl. И потом уже новое содержимое <head> включить в шаблон - <jdoc:include type="head" />. Либо не включать в <head> всё полученное таким образом, а внести весь результат в массив и включить в шаблон его содержимое.

Т.е. сделать что-то вроде этого:
$headerstuff = $this->getHeadData();
$key1 = 'http://static' .JURI::base(true). '/media/system/js/mootools.js';
$key2 = 'http://static' .JURI::base(true). '/media/system/js/caption.js';
set($headerstuff['scripts'][$key1], $headerstuff['scripts'][$key2]);
$this->setHeadData($headerstuff);

Только сам пока не знаю, как таким образом выбрать не только mootools.js и caption.js, а абсолютно все ссылки, которые есть и будут от сторонних компонентов.

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

На чем можно реализовать подобное

Автор jservice

Ответов: 0
Просмотров: 1583
Последний ответ 24.06.2014, 16:06:51
от jservice
LINKR глючит, чем его можно заменить?

Автор Escander

Ответов: 0
Просмотров: 1580
Последний ответ 09.11.2013, 12:11:36
от Escander
Можно ли проставить метатеги на темах на форуме?

Автор atavisma

Ответов: 1
Просмотров: 1560
Последний ответ 03.03.2013, 00:32:44
от atavisma
Посоветуйте как можно оптимизировать сайт без пользователей

Автор 14types

Ответов: 0
Просмотров: 1605
Последний ответ 31.01.2013, 16:06:33
от 14types
Обновление всего контента сайта с сохранением модулей

Автор etoedov

Ответов: 7
Просмотров: 2115
Последний ответ 22.01.2013, 16:23:59
от etoedov