![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 1 Pomógł: 0 Dołączył: 21.11.2007 Ostrzeżenie: (0%) ![]() ![]() |
Witam
Mam problem z taką komendą w .htaccess: RewriteEngine on RewriteRule ^prezenty_([^-]*)/([^-]*)-([^-]*)-([^-]*)-([^-]*)-([^-]*)-([^-]*)-([^-]*)-([^-]*)-([^-]*)-([^-]*).html$ index.php?a=$1&b=$2&c=$3&d=$4&e=$5&f=$6&g=$7&h=$8&i=$9&j=$10&k=$11 Mam problem powyżej '$9', czyli ze zmiennymi '$10' i '$11'. Zamiast je pobierać z adresu pobiera mi '$1' i na końcu niej daje '0' w przypadku pierwszej a w przypadku drugiej '1'. Może podam przykład. Załóżmy, że: $1=kot $10=samolot $11=wiadro Jeżeli pobieram od $1-9 to jest ok i wyświetla je prawidłowo ale kiedy pobieram '$10' to zamiast 'samolot' wyświetla mi 'kot0' a gdy pobieram '$11' to zamiast 'wiadro' wyświetla 'kot1'. Czyli np. w $10 podstawia $1+0. Czy linki można zamieniać na bardziej przyjazne maksymalnie do 9 zmiennych? Serwer mam na home.pl Z góry dzięki za pomoc! |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 62 Pomógł: 3 Dołączył: 10.09.2004 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
OMG!
w $_GET['uri'] masz całe żądanie, teraz sobie przeparsuj to jakos (np. http://pl2.php.net/parse_url) i przez PHP kontroluj zakresy i wszystko co chcesz - przenosne (portable) - uniwersalne - dajace duzo wieksza kontrole -------------------- Pozdrawiam
Tomasz Wójcik ..:: prgTW ::.. |
|
|
![]()
Post
#3
|
|
![]() Grupa: Moderatorzy Postów: 4 465 Pomógł: 137 Dołączył: 26.03.2004 Skąd: Gorzów Wlkp. ![]() |
Podepnę sie tutaj, bo problem dotyczy właśnie przekierowania.
na początek - rewrite
.htaccess znajduje się w http://www.domena.pl/directory W czym problem? Ano. Taki wywołanie http://www.domena.pl/directory Powoduje błąd Bad Request (404) Takie działa poprawnie http://www.domena.pl/directory/ Czy ktoś mógłby mi wyjaśnić, dlaczego na niektórych serwerach podanie tego slasha na końcu jest konieczne? Jeśli da się jakoś to obejść, to proszę o nakierowanie mnie. Słaby jestem z rewritów niestety. Pozdrawiam, -------------------- To think for yourself you must question authority and
learn how to put yourself in a state of vulnerable, open-mindedness; chaotic, confused, vulnerability, to inform yourself. Think for yourself. Question authority. |
|
|
![]()
Post
#4
|
|
![]() Developer Grupa: Moderatorzy Postów: 3 045 Pomógł: 290 Dołączył: 20.01.2007 ![]() |
Powodów może być wiele, trudno powiedzieć, osobiście nie spotkałem się z czymś takim. Na razie przychodzi mi do głowy że mod_rewrite na niektórych serwerach traktuje directory jako katalog, spróbuj dodać:
Kod RewriteCond %{REQUEST_FILENAME} !-d EDIT: Testując na na jednym serwerze zauważyłem że po wpisaniu domena.pl/test dopisywany jest slash na końcu adresu, zaś testując na innym serwerze po wpisaniu takiego samego adresu slash nie zostaje dopisany i wyskakuje bad request. Być może błąd leży po stronie konfiguracji serwera, ale tak jak napisałem wyżej regułka RewriteCond powinna pomóc. Możesz dodatkowo dodać: Kod RewriteCond %{REQUEST_FILENAME} !-f
Ten post edytował webdicepl 26.11.2007, 13:35:26 |
|
|
![]()
Post
#5
|
|
![]() Grupa: Moderatorzy Postów: 4 465 Pomógł: 137 Dołączył: 26.03.2004 Skąd: Gorzów Wlkp. ![]() |
Metodą ślepego posłuszeństwa dodałem
Działa. Dzięki ~webdicepl i ~Sh4dow --edit
Tak lepiej - !-f powoduje, że nie jest wysyłana ?url=$1 Pozdrawiam. -------------------- To think for yourself you must question authority and
learn how to put yourself in a state of vulnerable, open-mindedness; chaotic, confused, vulnerability, to inform yourself. Think for yourself. Question authority. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 19.08.2025 - 06:34 |