Помощь - Поиск - Пользователи - Календарь
Полная версия: Apache - mod_layout
Онлайн-форум hostobzor.ru > Архив (темы до 1.06.2015). Только для чтения. > Коммерческий хостинг. Общие форумы > Виртуальный сервер и Виртуальный Выделенный Сервер
rwHOST.ru
Собственно вопрос о вставке нужного контента на страницы.

Просто нигде не нашёл манов по всем функциям данного модуля.
Нужно вставить контент после этих тегов:
<body*>
и
<card*>

Т.е. что-то типа регулярки с заменой надо сделать.
Как я понял из, малоговорящих, примеров в архиве с данным модулем, нужно использовать

конструкцию "Layout".
Только не понятно, как?

Допустим, есть:

Код
<VirtualHost IP:80>
# Тра...ля...ля
     AddOutputFilterByType LAYOUT text/html
     Layout "<body*>" "<p>Text<p>" perpend
</VirtualHost>

Ничего не вставляет...

Очень важна данная тема...срочно нужно решить этот вопрос.
Буду очень благодарен за помощь...=)
ENELIS
может не perpend, а prepend?
не в курсе этого мода...
rwHOST.ru
Цитата(ENELIS @ 21.06.2009, 06:02) *

может не perpend, а prepend?
не в курсе этого мода...

Я по-разному пробовал...

Думаю, ещё можно сделать это с помощью модуля mod_filter, но тоже вопрос: Как?
eSupport.org.ua
Как всегда
Или самому читать документацю или платить тому, кто знает

rwHOST.ru
Цитата(eSupport.org.ua @ 21.06.2009, 07:59) *

Как всегда
Или самому читать документацю или платить тому, кто знает


Если Вы знаете, как это сделать, то назовите цену =)

Да и, думаю, можно и так помочь.
Документацию, естественно, читал.
Меня заинтересовал больше модуль mod_filter. Только не понял, как указать типы документов, которые будет обрабатывать мой скрипт-обработчик?
Написать сам обработчик, думаю, не проблема...
eSupport.org.ua
А я незнаю что именно вы хотите сделать
mod_filter служит для того, чтоб указать цепочку обработки
Сначала пускаете php2apache, потом контент text/html обрабатываете layout
В php отключить gzip, а делать его апачем в финале
Должно быть примерно так:
FilterChain php2apache layout gzip

Пишите в ЛС подробное ТЗ, поговорим

rwHOST.ru
Цитата(eSupport.org.ua @ 21.06.2009, 16:11) *

А я незнаю что именно вы хотите сделать
mod_filter служит для того, чтоб указать цепочку обработки
Сначала пускаете php2apache, потом контент text/html обрабатываете layout
В php отключить gzip, а делать его апачем в финале
Должно быть примерно так:
FilterChain php2apache layout gzip

Пишите в ЛС подробное ТЗ, поговорим


Собственно mod_layout, как я понял мне не подойдёт, т.к. нужно обработать документы на выходе регуляркой, чтобы вставить/заменить контент.

Щас интересует пока только то, что прописать в httpd.conf с использованием mod_filter, чтобы пропускать некоторые типы документов (например text/html) через свой скрипт-обработчик, который бы заменял то, что надо...

Цитата
mod_filter - Модуль перехватывает вывод любого apache обработчика (html, PHP, ModPerl, JServ) и передает его на вход любого указанного в конфигурации CGI-скрипта. Т.е. простой скрипт, может являться фильтром для целой группы документов, например, для принудительной вставки баннера или заголовка и футера.


Вот, что собственно мне и надо...
eSupport.org.ua
Мы говорим о разных вещах
Дайте ссылку на закачку исходного кода этого модуля - посмотрю

rwHOST.ru
Цитата(eSupport.org.ua @ 21.06.2009, 20:00) *

Мы говорим о разных вещах
Дайте ссылку на закачку исходного кода этого модуля - посмотрю

http://tangent.org/391/mod_filter.html

В архиве есть такой пример:

Цитата
The following is an example setup:
FilterEngine On
Filter text/html /eecummings.cgi
Filter perl-script SSIFILTER


Пробовал прописывать в virtualhost'ах, в <Directory>...
Apache во всех случиях ругается, что не знает такие параметры...
eSupport.org.ua

Not Found
The requested URL /redir/mod_filter/6563/url_tgz/mod_filter-1.4.1.tar.gz was not found on this server.





Похоже умерло давно




rwHOST.ru
Цитата(eSupport.org.ua @ 21.06.2009, 21:56) *

Not Found
The requested URL /redir/mod_filter/6563/url_tgz/mod_filter-1.4.1.tar.gz was not found on this server.
Похоже умерло давно

http://rwhost.ru/mod_filter.tar.gz
rwHOST.ru
Вот нашёл, как вставить контент в страницы:

Код
AddHandler my-parser-cgi html
Action my-parser-cgi /cgi-bin/parser.cgi
# parser.cgi - обработчик


НО надо определять не по расширению, а по заголовкам...
Как такое сделать?
eSupport.org.ua
Поправить код mod_filter?

rwHOST.ru
Цитата(eSupport.org.ua @ 23.06.2009, 16:40) *

Поправить код mod_filter?


Судя по описанию данного модуля, вроде, и без правки исходного кода mod_filter, можно сделать...
Или ошибаюсь?

Вообщем, какие ещё есть решения для вставки контента на страницы?
rwHOST.ru
Задачу решил мистическим образом с помощью mod_layout ! :-D

Дело в том, что, если использовать один параметр Layout, то он ничего не заменяет/добавляет.
Случайным образом выяснил, что, если добавить параметры LayoutHeader или LayoutFooter вместе с Loyout, то Layout начинает работать.
Но параметры LayoutHeader и LayoutFooter мне как бы не нужны, меня интересовал лишь параметр Layout.
Пришлось выпендриться так:

Код
AddOutputFilterByType LAYOUT text/html
AddOutputFilterByType LAYOUT text/vnd.wap.wml
Layout "<body*>" /cgi-bin/my.cgi append
Layout "<card*>" /cgi-bin/my.cgi append
LayoutFooter NULL


Не знаю правильная ли конструкция:
Код
LayoutFooter NULL

Но никаких ошибок синтаксиса и вообще других ошибок не выдаёт!

Если кто-нибудь знает более оптимальное решение, прошу написать...=)
AVS
Почему mod_layout отсутствует в комплекте с Apache 2.2 и где его скачать?
asdffdsa
Цитата(AVS @ 28.07.2009, 11:33) *

Почему mod_layout отсутствует в комплекте с Apache 2.2 и где его скачать?

http://download.tangent.org/mod_layout-5.0.tar.gz
Столкнулся с похожей задачей и все не могу ее решить, нужно вывести свой текст не только в php, но и в html файлах, php нормально обрабатывает, а на html вот такая фигня выходит:
Цитата
мойтекст ‹ќRMoФ0<7ївХzй®і].ґI$ШmU¤zX@њђ“ј8V{e?Z–Й?и„8ґЁpб?уБJ-+шb{мyћїd{юr¶x{vЗ‹У8{хмдщ Ш?у7УзуЕј?x<Ћ'°pВxEКЎ9?|БІ(Jjjt%№-WђЛВjлRцаЁбBB"Ч№u%є4†KURќNвш!ФЁdMЭєЅзІh+Ў„VТ¤B—Э§ЁхR”Ґ2rШщҐ(ъ]_zЗ]Ў–[ю“?ЅГџьЕЏ¶6иQЌпЉ”ХDЛ}О{Ѓ•ТиЗо=§дЄ=ЧVЪ±TЛ”„љ|рё±ф:ј!»,©¬!°ёP‰УќЧиJaД.]}ыЮV¤ОЗMU[OA-ьјэюеЧх ЬЮ|э|uЅќр<(mЅ/�w!цh‡эAВ™ЂЪaµ1$њDJЩ»\
sОАУJcК?РЁДВ:С6У>kрЂЭq,ќXэ‡ЭIцЁ°ЛХњ!GѓШ‹г'kkў· цюЦfB¤љ¤х

Директива вот так:
AddOutputFilter LAYOUT php
AddOutputFilter LAYOUT html
LayoutHeader /путь/до/1.html
asdffdsa
Проблема решается отключением mod_deflate.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.
Русская версия Invision Power Board © 2001-2024 Invision Power Services, Inc.