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

Zapętlanie reguły mod rewrite

Polecane posty

Witam,

 

reguła wygląda następująco

 

RewriteCond %{HTTP_HOST} ^(.*).domena.pl$

RewriteRule .* profile.php?usub=%1

 

Dostaję błąd "Internal Server Error", informacje z logów:

 

[sun Sep 13 11:02:04 2009] [error] [client 77.79.222.138] Request exceeded the limit of 10 internal redirects due to probable configuration error. Use 'LimitInternalRecursion' to increase the limit if necessary. Use 'LogLevel debug' to get a backtrace.

 

 

z góry dziękuje za pomoc.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

przetłumaczę Ci co napisałeś w kodzie:

 

sprawdź czy domena to costam.domena.pl, jeśli tak to przekieruj na costam.domena.pl/profile.php?usub=costam, i teraz zacznij czytać od początku tej linii :)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

RewriteCond %{REQUEST_URI} !^/profile.php
RewriteCond %{HTTP_HOST} ^(.*).domena.pl$
RewriteRule .* /profile.php?usub=%1

 

ta wersja sprawdza czy nie jest to już odwołanie do profile.php - powinno działać. :)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Dodałem na początku:

 

RewriteCond %{ENV:REDIRECT_STATUS} 200

RewriteRule .* - [L]

 

Działa, ale co jakiś czas strona ładuje się bardzo długo, aż w końcu dostaje Internal Server Error

Logi już co innego:

 

[Thu Sep 17 05:48:31 2009] [warn] [client 202.131.30.150] Timeout waiting for output from CGI script /home/hectic/domains/domena.pl/public_html/cgi-bin/php-fcgi

[Thu Sep 17 05:48:31 2009] [error] [client 202.131.30.150] Premature end of script headers: php-fcgi

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Po dodaniu tylko tego zwraca

 

[Thu Sep 17 11:27:48 2009] [error] [client 216.129.119.41] Request exceeded the limit of 10 internal redirects due to probable configuration error. Use 'LimitInternalRecursion' to increase the limit if necessary. Use 'LogLevel debug' to get a backtrace

 

Jak dodam jeszcze to

 

RewriteCond %{ENV:REDIRECT_STATUS} 200

RewriteRule .* - [L]

 

to na razie działa. Dzięki :)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Teraz nie tak często jak kiedyś, ale w logach pojawia się coś takiego

 

[Fri Sep 18 12:24:04 2009] [error] [client 84.205.172.30] suexec policy violation: see suexec log for more details, referer: http://www.art-club.pl/

[Fri Sep 18 12:24:04 2009] [error] [client 84.205.172.30] Premature end of script headers: php-fcgi, referer: http://www.art-club.pl/

[Fri Sep 18 12:24:04 2009] [error] [client 84.205.172.30] Request exceeded the limit of 10 internal redirects due to probable configuration error. Use 'LimitInternalRecursion' to increase the limit if necessary. Use 'LogLevel debug' to get a backtrace., referer: http://www.art-club.pl/

 

Czy można to jeszcze jakoś przerobić? Całość wygląda tak

 

RewriteEngine On

 

RewriteCond %{ENV:REDIRECT_STATUS} 200

RewriteRule .* - [L]

 

RewriteCond %{HTTP_HOST} =vip.art-club.pl

RewriteRule .* index.php?file=subscription/subscription

 

RewriteCond %{HTTP_HOST} =aotw-archive.art-club.pl

RewriteRule .* thumbnails.php?album=potwarch

 

RewriteRule ^/call/(.*)$ http://art-club.pl/$1 [P]

RewriteCond %{HTTP_HOST} !=www.art-club.pl

RewriteCond %{HTTP_HOST} !=uploader.art-club.pl

RewriteCond %{HTTP_HOST} !=vip.art-club.pl

RewriteCond %{HTTP_HOST} !=aotw-archive.art-club.pl

RewriteCond %{HTTP_HOST} ^(.*).art-club.pl$

RewriteCond %{REQUEST_URI} !\.(jpg|gif|png|js|css)$ [NC]

RewriteCond %{REQUEST_FILENAME} !requesthighest.php$ [NC]

RewriteCond %{REQUEST_FILENAME} !requestusersnews.php$ [NC]

RewriteCond %{REQUEST_FILENAME} !requestfriendsupload.php$ [NC]

RewriteCond %{REQUEST_FILENAME} !requestprofilecomments.php$ [NC]

RewriteRule .* profile.php?usub=%1 [L]

 

RewriteRule ^index.html$ index.php

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Zakombinowałem na maxa

 

RewriteEngine On

RewriteBase /

 

RewriteCond %{ENV:REDIRECT_STATUS} 200

RewriteRule .* - [L]

 

RewriteCond %{HTTP_HOST} ^www.art-club.pl

RewriteRule (.*) http://art-club.pl/$1 [R=301,L]

 

RewriteCond %{HTTP_HOST} =vip.art-club.pl

RewriteRule .* index.php?file=subscription/subscription

 

RewriteCond %{HTTP_HOST} =aotw-archive.art-club.pl

RewriteRule .* thumbnails.php?album=potwarch

 

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{HTTP_HOST} !=www.art-club.pl

RewriteCond %{HTTP_HOST} !=uploader.art-club.pl

RewriteCond %{HTTP_HOST} !=vip.art-club.pl

RewriteCond %{HTTP_HOST} !=aotw-archive.art-club.pl

RewriteCond %{HTTP_HOST} ^(.*).art-club.pl$

RewriteCond %{REQUEST_URI} !\.(jpg|gif|png|js|css)$ [NC]

RewriteCond %{REQUEST_FILENAME} !requesthighest.php$ [NC]

RewriteCond %{REQUEST_FILENAME} !requestusersnews.php$ [NC]

RewriteCond %{REQUEST_FILENAME} !requestfriendsupload.php$ [NC]

RewriteCond %{REQUEST_FILENAME} !requestprofilecomments.php$ [NC]

RewriteRule .* profile.php?usub=%1 [L]

 

RewriteRule ^index.html$ index.php

 

i teraz od czasu do czasu pojawia się:

 

Internal Server Error

The server encountered an internal error or misconfiguration and was unable to complete your request

 

w logach nic. Jakieś propozycje?

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ć  

×