Skocz do zawartości
Zaloguj się, aby obserwować  
kero19

Problem z mod_layout

Polecane posty

Witam,

Mam serwer na Debianie z zainstalowanym DA.

Zainstalowałem mod_layout 5.1, jednak nie wiem do końca jak go użyć.

W httpd.conf tuż po załadowaniu modułu dodałem:

LayoutHeader /home/xxx/domains/xxx/public_html/lay.conf

jednak na żadnej stronie nic się nie zmieniło. Czy coś przeoczyłem? Mod jest raczej dobrze zainstalowany (jest widoczny w phpinfo).

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

hmm, dziwne, bo jak pamietam mod_layout to ta dyrektywa jest poprawna,

tj. mozna definiowac wpisy globalnie, a nie tylko per virtualhost...

zerknij do error_loga, tam pewnie znajdziemy odpowiedz

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

w logach nie ma nic ze słowem "layout".

Próbowałem dodać powyższa formułkę tez przez DA dla konkretnego usera. Próbowałem też

LayoutHeader "TEST"

Niestety bez zadnych rezultatow.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

dla wszystkich :)

 

Mam Apache 2.0 więc chyba powinienem był zainstalować Mod_layout 4.1 http://tangent.org/362/mod_layout.html

Tyle, że 4.1 coś nie chce sie zainstalować:

:~/mod_layout-4.1# make

apxs -c mod_layout.c utility.c layout.c

/var/www/build/libtool --silent --mode=compile gcc -prefer-pic -DLINUX=2 -D_REENTRANT -D_GNU_SOURCE -D_LARGEFILE64_SOURCE -g -O2 -pthread -I/usr/local/include -I/usr/include/apache -I/usr/include/apache -I/usr/include/apache -c -o mod_layout.lo mod_layout.c && touch mod_layout.slo

mod_layout.c: In function 'layout_filter':

mod_layout.c:293: error: expected ';' before '{' token

mod_layout.c: At top level:

mod_layout.c:576: error: expected expression before 'layout_conf'

mod_layout.c:576: error: initializer element is not constant

mod_layout.c:576: error: (near initialization for 'layout_cmds[4].cmd_data')

mod_layout.c:577: error: expected expression before 'layout_conf'

mod_layout.c:577: error: initializer element is not constant

mod_layout.c:577: error: (near initialization for 'layout_cmds[5].cmd_data')

mod_layout.c:582: error: expected expression before 'layout_conf'

mod_layout.c:582: error: initializer element is not constant

mod_layout.c:582: error: (near initialization for 'layout_cmds[10].cmd_data')

mod_layout.c:583: error: expected expression before 'layout_conf'

mod_layout.c:583: error: initializer element is not constant

mod_layout.c:583: error: (near initialization for 'layout_cmds[11].cmd_data')

mod_layout.c:584: error: expected expression before 'layout_conf'

mod_layout.c:584: error: initializer element is not constant

mod_layout.c:584: error: (near initialization for 'layout_cmds[12].cmd_data')

mod_layout.c:589: error: expected expression before 'layout_conf'

mod_layout.c:589: error: initializer element is not constant

mod_layout.c:589: error: (near initialization for 'layout_cmds[17].cmd_data')

mod_layout.c:590: error: expected expression before 'layout_conf'

mod_layout.c:590: error: initializer element is not constant

mod_layout.c:590: error: (near initialization for 'layout_cmds[18].cmd_data')

mod_layout.c:591: error: expected expression before 'layout_conf'

mod_layout.c:591: error: initializer element is not constant

mod_layout.c:591: error: (near initialization for 'layout_cmds[19].cmd_data')

mod_layout.c:592: error: expected expression before 'layout_conf'

mod_layout.c:592: error: initializer element is not constant

mod_layout.c:592: error: (near initialization for 'layout_cmds[20].cmd_data')

mod_layout.c:593: error: expected expression before 'layout_conf'

mod_layout.c:593: error: initializer element is not constant

mod_layout.c:593: error: (near initialization for 'layout_cmds[21].cmd_data')

apxs:Error: Command failed with rc=65536

.

make: *** [mod_layout.so] Błąd 1

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Problem rozwiązany. Trzeba było dodać formaty plików dla jakich maja wyświetlać się reklamy

AddOutputFilter LAYOUT FORMATY

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Rozwiązany 1 problem ale pojawił się następny.

Jeśli w PHP chce się wygenerować np jakiś obrazek mod_layout także wstawia do niego swój kod i obrazek nie wyświetla się prawidłowo. Można coś na to poradzić?

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Możesz rozszerzyć swoją mysl?

 

Ogólnie to tworzysz sobie nowy typ mime np. php5-noads, linkujesz go do wrappera fcgid, później przypisujesz AddHandler php5-noads .phpx, w mod_layout wyłączasz ten mimetyp z obsługiwanych i pliki generujące grafikę dajesz jako .phpx.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Fiercio, Twój pomysł działa, ale nie w ten sposób moi użytkownicy będą mogli zmienić rozszerzenia plików i na ich stronach w ogóle nie będzie reklam.

 

Mam też problem np. z forum phpBB, ponieważ wyświetla się ono podwójnie (tak jakby skypt wykonał się 2x)

 

Można coś na to poradzić? Ewentualnie jakiś inny - lepszy sposób na umieszczenie reklam na stronach użytkowników?

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Można coś na to poradzić? Ewentualnie jakiś inny - lepszy sposób na umieszczenie reklam na stronach użytkowników?

 

Inaczej nie udało mi się tego rozwiązać w moim przypadku.

Lepszy sposób... jeśli to ma być autodarmowy hosting, to po prostu napisz, że nie jest to możliwe i tyle... i tak to chyba jest wszędzie w dolepkowcach.

A jeśli coś a'la sponsoring, to po prostu dogadaj się o wstawkę jakiegoś iframka komponującego się z layoutem i wyświetlającego zawartość twojego serwisu - skorzysta i jedna, i druga strona.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Jak pogrzebie się w kodzie, to można wspomniane wyżej problemy zniwelować, sprawę zleciłem jednemu programiście.

 

Rozwiązanie testowane jest na darmowym hostingu : hostil.pl .

 

Dodawany jest

<!-- stopka start -->

mój kod

<!-- stopka stop -->

Można założyć sobie konto i potestować. Może jeszcze wyjdzie jakiś błąd.

 

M

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Tylko wtedy jak rozróżnisz, czy przez php jest wysyłana grafika, czy też tekst/normalna strona?

Nawet, jeśli to będziesz robił ręcznie (z palca deaktywował reklamy dla pliku) to ktoś go może podmienić.

 

Ogólnie - jest to proszenie się o potencjalne problemy :)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Tylko wtedy jak rozróżnisz, czy przez php jest wysyłana grafika, czy też tekst/normalna strona?

Nawet, jeśli to będziesz robił ręcznie (z palca deaktywował reklamy dla pliku) to ktoś go może podmienić.

 

Ogólnie - jest to proszenie się o potencjalne problemy :)

 

Szczegółów nie znam. Prosiłem o rozwiązanie problemów i wstępnie wygląda, że działa. Założenie takie, że nic mam ręcznie nie robić z zawartością stron klientów.

Zamieściłem tutaj info, może ktoś znajdzie jakiś konkretny błąd w tym poprawionym modlayout-cie.

 

M

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Teraz, to dla plików php wcale nie jest doklejana stopka...

 

www.f4e0.hostil.pl/index.php

 

Zawartość pliku to

<?php
echo '<h1>Fiercio Test Page</h1>';
?>

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Teraz, to dla plików php wcale nie jest doklejana stopka...

 

 

a tak, bo zrobiłem doklejanie stopki tylko do stron zawierających <body> </body> - to mi wystarcza.

 

M

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
a tak, bo zrobiłem doklejanie stopki tylko do stron zawierających <body> </body> - to mi wystarcza.

 

M

 

Ale już do <body /> nie dokleja, więc bardzo łatwo można te bannerki ominąć.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Jak pogrzebie się w kodzie, to można wspomniane wyżej problemy zniwelować, sprawę zleciłem jednemu programiście.

 

Rozwiązanie testowane jest na darmowym hostingu : hostil.pl .

 

Dodawany jest

<!-- stopka start -->

mój kod

<!-- stopka stop -->

Można założyć sobie konto i potestować. Może jeszcze wyjdzie jakiś błąd.

 

M

 

Nie rozumiem, co ma to na celu?

 

a tak, bo zrobiłem doklejanie stopki tylko do stron zawierających <body> </body> - to mi wystarcza.

 

M

Jak to zrobiłeś? ;)

 

 

No i co poradzić z tym biednym phpBB3 jeśli forum wyświetla się 2x, jedno pod drugim (tak jakby kod wykonał się 2x).

Jak wyłącze reklamy dla wszystkich to jest ok, ale jak wyłącze reklamy tylko dla danego konta problem nadal występuje.

 

Słyszeliście coś na temat auto_prepend_file? Tyle, że tutaj wydaje mi się, że user sam będzie mógł usunąć sobie reklamy przez odpowiednia zmianę ustawień php w .htaccess.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Nie rozumiem, co ma to na celu?

 

podałem tylko przykład do prześledzenia, jakby ktoś chciał zobaczyć jak u mnie działa.

 

Jak to zrobiłeś? ;)

 

przegrzebane w kodzie.

 

No i co poradzić z tym biednym phpBB3 jeśli forum wyświetla się 2x, jedno pod drugim (tak jakby kod wykonał się 2x).

 

 

Czy tylko na phpBB3 to zaobserwowałeś ? Musze sprawdzić jak jest u mnie po przeróbkach.

 

M

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
przegrzebane w kodzie.

 

A konkretniej?

 

Czy tylko na phpBB3 to zaobserwowałeś ? Musze sprawdzić jak jest u mnie po przeróbkach.

jak na razie tylko phpbb3 tak się zachowuje.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

auto_prepend_file nie było by w sumie złe, szczególnie że można użyć własnego kodu php (np w celach statystycznych). Tylko tutaj mam znowu problem z open_basedir:

Warning: Unknown: open_basedir restriction in effect. File(/home/xxxx/domains/xxxxx/public_html/zzzz) is not within the allowed path(s): (/home/xxxx/:/tmp:/usr/local/lib/php/) in Unknown on line 0

 

Warning: Unknown: failed to open stream: Operation not permitted in Unknown on line 0

 

Fatal error: Unknown: Failed opening required '/home/xxxx/domains/xxxxx/public_html/zzzz' (include_path='.:/usr/local/lib/php') in Unknown on line 0

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Na wstępie przepraszam że odgrzewam stary temat ale też napotkałem problem.

 

Próbuję dodać stopkę przy użyciu mod_layout do forum opartego na vBulletin i otrzymuje informacje w przęglądarce o błędzie kodowania strony.

 

 

Kod jaki dodaje do Virtualki:

 

AddOutputFilter LAYOUT php
LayoutFooter /home/footer.html

 

Do stron w html stopka jest dodawana bardzo ładnie :D

 

Czy coś robię nie tak czy vBulletin jest odporne na takie rzeczy??

 

 

Pozdrawiam

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Bądź aktywny! Zaloguj się lub utwórz konto

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto

Zarejestruj nowe konto, to proste!

Zarejestruj nowe konto

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się

Zaloguj się, aby obserwować  

×