Konfiguracja serwerów, usług, itp.
ruun
Member
Posty: 1366 Rejestracja: 29 marca 2007, 21:07
Lokalizacja: Kruszwica
Post
autor: ruun » 31 maja 2009, 01:12
Na serwerze za http odpowiada Lighttpd. Próbuję na nim zrobić przepisywanie adresów (rewrite).
Mam taką regułkę
Kod: Zaznacz cały
url.rewrite-once = (
"/(.*)\.(.*)" => "$0",
"/(css|pliki|img|js)/" => "$0",
"^/([^.]+)$" => "/index.php?p=$1",
"^pobierz/([^.]+)/?$" => "/pobierz.php?plik=$1"
)
Działają linki postaci
Kod: Zaznacz cały
strona.pl/kontakt --> strona.pl/index.php?p=kontakt
a takie nie działają
Kod: Zaznacz cały
strona.pl/pobierz/pomiary/cennik.pdf --> strona.pl/pobierz.php?plik=pomiary/cennik.pdf
Zapewne błąd mam tu
Co robię źle?
ponton
Beginner
Posty: 406 Rejestracja: 24 stycznia 2007, 01:40
Lokalizacja: Kalisz/Wroc³aw
Post
autor: ponton » 31 maja 2009, 02:26
A na co ma się przepisywać ta czwarta reguła?
ruun
Member
Posty: 1366 Rejestracja: 29 marca 2007, 21:07
Lokalizacja: Kruszwica
Post
autor: ruun » 31 maja 2009, 08:40
Czwarta reguła, czyli
"^pobierz/([^.]+)/?$" => "/pobierz.php?plik=$1"
przepisuje
na
a błąd jest w pierwszej części (pogrubionej) ale ja nie wiem jaki.
ponton
Beginner
Posty: 406 Rejestracja: 24 stycznia 2007, 01:40
Lokalizacja: Kalisz/Wroc³aw
Post
autor: ponton » 31 maja 2009, 15:44
Ale jak powinna przepisywać? Chodzi np. o:
Kod: Zaznacz cały
/pobierz/coś/tam/plik.txt => /pobierz/php?plik=plik.txt
To w takim razie czy nie zadziała:
Kod: Zaznacz cały
"^pobierz/.*/([^/]+)$" => "/pobierz.php?plik=$1"
ruun
Member
Posty: 1366 Rejestracja: 29 marca 2007, 21:07
Lokalizacja: Kruszwica
Post
autor: ruun » 31 maja 2009, 17:26
ponton pisze: Ale jak powinna przepisywać?
Napisałem w pierwszym poscie.
Kod: Zaznacz cały
strona.pl/pobierz/pomiary/cennik.pdf --> strona.pl/pobierz.php?plik=pomiary/cennik.pdf
całość za
pobierz/ ma przerzucić do zmiennej plik w pobierz.php.
ponton pisze: To w takim razie czy nie zadziała
Niestety nie działa.
ponton
Beginner
Posty: 406 Rejestracja: 24 stycznia 2007, 01:40
Lokalizacja: Kalisz/Wroc³aw
Post
autor: ponton » 31 maja 2009, 18:26
Napisałem w pierwszym poscie.
To źle Cię zrozumiałem...
Pierwszy błąd to chyba brak "/" na początku. Robisz od razu "^pobierz" zamiast "^/pobierz". Druga rzecz, to nie wiem, co ma robić "[^.]" -- "^" oznacza dopełnienie zbioru, więc "[^.]" oznacza nic (dopełnienie wszystkiego).
I ostatnia sprawa to "/" na końcu, który w ogóle się nie zmatchuje w tym przypadku.
To powinno działać:
ruun
Member
Posty: 1366 Rejestracja: 29 marca 2007, 21:07
Lokalizacja: Kruszwica
Post
autor: ruun » 31 maja 2009, 19:58
ponton pisze: To powinno działać:
Jak sprawdzam na
http://www.regexp.net to działa ale na serwerze nie chodzi. Cały czas dostaję błąd 404.
ponton
Beginner
Posty: 406 Rejestracja: 24 stycznia 2007, 01:40
Lokalizacja: Kalisz/Wroc³aw
Post
autor: ponton » 31 maja 2009, 23:20
ruun
Member
Posty: 1366 Rejestracja: 29 marca 2007, 21:07
Lokalizacja: Kruszwica
Post
autor: ruun » 01 czerwca 2009, 20:27
Nadal to samo - 404.