przeszukałem już forum, ale nie znalazłem odpowiedzi (google również milczy)
Mam następujący problem:
Struktura katalogów:
Kod
- httpd (ten folder jest otwierany po wpisaniu http://localhost/)
-> skrypt
-> .htaccess
-> index.php
-> ucp.php
Jest ona niepełna ale to nie ma znaczenia.-> skrypt
-> .htaccess
-> index.php
-> ucp.php
W .htaccess nam nasępujący kod:
Kod
ErrorDocument 400 .....
ErrorDocument 403 ...
ErrorDocument 404 ...
ErrorDocument 500 ...
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^error([0-9]+)/?$ library/error.php?e=$1 [NC,L]
RewriteRule ^ucp/([\w]+)(/|\.htm(l)?|\.php)?$ ucp.php?mode=$1 [NC,L]
Tak więc po wpisaniu adresu: http://localhost/skrypt/ucp/login.html powinienem "znaleść się" w pliku ucp.php oraz mieć zmienną $_GET['mode'] = 'login'. Połowa roboty już jest - jestem w pliku ucp.php, jednakże tablica $_GET jest postaErrorDocument 403 ...
ErrorDocument 404 ...
ErrorDocument 500 ...
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^error([0-9]+)/?$ library/error.php?e=$1 [NC,L]
RewriteRule ^ucp/([\w]+)(/|\.htm(l)?|\.php)?$ ucp.php?mode=$1 [NC,L]
Kod
Array
(
)
Próbowałem już usuwać RewriteCondy, dodawać RewriteBase ale nic nie pomogło. Zauważyłem za to pewną właściwość:(
)
Jeżeli nazwa pliku (bez rozszerzenia, np.: ucp) jest taka sama jak początek przekierowainia, wtedy to do pliku "nie dociera" $_GET.
Tak więc gdy zmienie ostatnią regułkę na
Kod
RewriteRule ^ucTESTp/([\w]+)(/|\.htm(l)?|\.php)?$ ucp.php?mode=$1 [NC,L]
Adres: http://localhost/skrypt/ucTESTp/login.html przekieruje mnie do pliku ucp.php, a w tablicy $_GET będzie index 'mode' o wartości 'login'.Moje pytanie:
jak obejść ten problem?
Zapewne jest to wina konfiguracji Apache'a - używam WebServ'a (chwilowo)
Z góry dziękuję za każdą odpowiedź,
pozdrawiam.