![]() ![]() |
Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 9 Pomógł: 0 Dołączył: 28.04.2009 Ostrzeżenie: (0%)
|
Otóż problem może wydać się dziwny ale wygląda to następująco:
mam coś takiego w .htaccess: Kod Options FollowSymLinks RewriteEngine On RewriteRule ^index.html$ index.php [L] RewriteRule ^(.+)\.html$ index.php?id=$1 [L] i teraz jeśli wpisuję: domena.pl/index.html to przekierowuje na domena.pl/index.php ale jeśli wpiszę domena.pl/opis.html to powinno przejść do domena.pl/index.php?id=opis a wyświetla się błąd po prostu nie działa przekierowanie kiedy nazwa pliku ma jeszcze zmienne Ktoś wie jak to naprawić? |
|
|
|
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 326 Pomógł: 121 Dołączył: 23.07.2008 Skąd: Wrocław Ostrzeżenie: (0%)
|
to dlatego, ze atom (.+) pochlonal juz Ci caly adres (kropka dopasowuje sie do dowolnego znaku, wiec dlaczego nie do kropki i html?). jesli chcesz, zeby Ci dzialalo, to musisz zmodyfikowac druga regule w stylu
Kod RewriteRule ^([a-zA-Z]+)\.html$ index.php?id=$1 [L] przy czym atom [a-zA-Z] musisz zamienic na te znaki, ktore rzeczywiscie potrzebujesz i beda uzywane w adresach |
|
|
|
Post
#3
|
|
|
Grupa: Zarejestrowani Postów: 9 Pomógł: 0 Dołączył: 28.04.2009 Ostrzeżenie: (0%)
|
Hmm... Rzeczywiście tam był błąd, ale nadal nie działa.
Dla Kod RewriteRule ^([a-zA-Z]+)\.html$ index.php [L] pokazuje index.php, ale dla Kod RewriteRule ^([a-zA-Z]+)\.html$ index.php?id=$1 [L] już nie działa... Nawet jeśli ustalę że: Kod RewriteRule ^opis.html$ index.php?id=opis [L] to też nie działa (IMG:http://forum.php.pl/style_emoticons/default/sadsmiley02.gif) |
|
|
|
Post
#4
|
|
|
Grupa: Zarejestrowani Postów: 355 Pomógł: 50 Dołączył: 20.08.2007 Skąd: Częstochowa Ostrzeżenie: (0%)
|
a sprobuj:
RewriteRule ^([^.]+).html$ index.php?id=$1 [L] u mnie dziala (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) |
|
|
|
Post
#5
|
|
|
Grupa: Zarejestrowani Postów: 9 Pomógł: 0 Dołączył: 28.04.2009 Ostrzeżenie: (0%)
|
Też nie działa.
Ale teraz zauważyłem, że w konfiguracji php nie mam włączonego mod_rewrite. Na innym serwerze (gdzie mod_rewrite mi działa) jest napisane w sekcji apache że mod_rewrite jest załadowany. Najprawdopodobniej chyba o to chodzi bo już nic innego nie może być. Ktoś wie jak to włączyć?? Z drugiej strony przecież w .htaccess mam: Kod RewriteEngine On więc powinno działać... Ten post edytował thede 29.04.2009, 14:06:33 |
|
|
|
Post
#6
|
|
|
Grupa: Zarejestrowani Postów: 355 Pomógł: 50 Dołączył: 20.08.2007 Skąd: Częstochowa Ostrzeżenie: (0%)
|
http://serverlamp.blogspot.com/2008/04/mod-rewrite.html
Jezeli nie masz w apache modulu mod_rewrite to nie koniecznie (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) Ten post edytował hondek 29.04.2009, 14:07:30 |
|
|
|
Post
#7
|
|
|
Grupa: Zarejestrowani Postów: 9 Pomógł: 0 Dołączył: 28.04.2009 Ostrzeżenie: (0%)
|
Ale ja to mam na hostingu w 8p.pl
nie mogę zmieniać konfiguracji php, chyba że w .htaccess |
|
|
|
Post
#8
|
|
|
Grupa: Zarejestrowani Postów: 355 Pomógł: 50 Dołączył: 20.08.2007 Skąd: Częstochowa Ostrzeżenie: (0%)
|
wywal:
Options FollowSymLinks |
|
|
|
Post
#9
|
|
|
Grupa: Zarejestrowani Postów: 9 Pomógł: 0 Dołączył: 28.04.2009 Ostrzeżenie: (0%)
|
Nie działa (IMG:http://forum.php.pl/style_emoticons/default/sadsmiley02.gif)
|
|
|
|
![]() ![]() |
|
Aktualny czas: 20.12.2025 - 23:55 |