Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Przenoszenie strony z apache na IIS - problem z ISAPI_Rewrite
Forum PHP.pl > Forum > Serwery WWW > IIS
sel
Witam,
Muszę przenieść stronkę z apacha na IIS i mam pewien problem odnośnie ISAPI_Rewrite.
.htaccess na apachu działa na 100% dobrze.
Zawartość .htaccess:
RewriteEngine on
RewriteRule ^([a-zA-Z0-9_]+)(/*)$ index.php?controller=$1
RewriteRule ^([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)(/*)$ index.php?controller=$1&action=$2
RewriteRule ^([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)(/*)$ index.php?controller=$1&action=$2&param1=$3
RewriteRule ^([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)(/*)$ index.php?controller=$1&action=$2&param1=$3&param2=$4
RewriteRule ^([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)(/*)$ index.php?controller=$1&action=$2&param1=$3&param2=$4&param3=$5
RewriteRule ^([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)(/*)$ index.php?controller=$1&action=$2&param1=$3&param2=$4&param3=$5&param4=$6
RewriteRule ^([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)(/*)$ index.php?controller=$1&action=$2&param1=$3&param2=$4&param3=$5&param4=$6&param5=$7

Mam windows server 2003 i IIS 6. Zainstalowałem ISAPI_Rewrite 2.11.
Zmieniłem nazwe .htaccess na httpd.ini i dokonałem drobnych modyfikacji (wg tego co jest w dokumentacji: http://www.isapirewrite.com/
Plik httpd.ini teraz wygląda tak:
[ISAPI_Rewrite]
RewriteEngine On
RewriteRule ^([a-zA-Z0-9_]+)(/*)$ /index.php\?controller=$1
RewriteRule ^([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)(/*)$ /index.php\?controller=$1&action=$2
RewriteRule ^([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)(/*)$ /index.php\?controller=$1&action=$2&param1=$3
RewriteRule ^([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)(/*)$ /index.php\?controller=$1&action=$2&param1=$3&param2=$4
RewriteRule ^([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)(/*)$ /index.php\?controller=$1&action=$2&param1=$3&param2=$4&param3=$5
RewriteRule ^([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)(/*)$ /index.php\?controller=$1&action=$2&param1=$3&param2=$4&param3=$5&param4=$6
RewriteRule ^([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)(/*)$ /index.php\?controller=$1&action=$2&param1=$3&param2=$4&param3=$5&param4=$6&param5=$7

No i nie działa:(
Sam ISAPI_Rewrite na pewno łapie plik httpd.ini (chociaż jakoś dziwnie) bo dla np. reguły:
^(.*)$ index.php\?arg=$1
do $_GET'a wrzuca arg ale w ten sposób:
$_GET['arg'] === index.php?arg=TuJakisTekstWpisanyZaNazwąHosta
Gdy zamieniam RewriteRule z: ^(.*)$ index.php\?arg=$1 na ^([a-zA-Z0-9]*)$ index.php\?arg=$1 to po pierwszym odświeżeniu stronki (powiedzmy localhost/hahaha) rzeczywiście w $_GET['arg'] siedzi "hahaha", jednak po ponownym odświerzeniu dostaje komunikat z servera o braku stron
 do wyświetlenia.
Wie ktoś może co jest grane? o co biega z tym IIS i ISAPI_Rewrite? Gdzie moge znaleźć informacje o tym jak budować warunki przepisania?
Niesty mimo iż dokumentacja http://www.isapirewrite.com/ jest dość obszerna to nic nie daje;/
Proszę was bardzo o pomoc.
sel
Daje 2 dychy dla tego kto to rozwiąże!
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.