Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [inne][mod rewrite] Automatyczna zamiana
Forum PHP.pl > Forum > Przedszkole
luciusz
Witam.

Nie mogę sobie poradzić z mod rewrite. Chcialbym zamienic adres typu: www.mojastrona.pl/index.php?name=faq na adres www.mojastrona.pl/faq.php. Zrobilem to tak: RewriteRule ^faq.php$ index.php?name=faq [L] i dziala. Problem w tym, ze podstron takich jak faq jest duzo i chcialbym, nie pisac dla kazdej podstrony osobnej regulki, ale zrobic to za pomoca jednej instrukcji. Probowalem roznych rzeczy, ale nie dzialaly. Da sie tak? Prosze o pomoc.

Pozrawiam
cojack
Kolego milion albo nawet dwa razy było to na forum opisywane, ja na swoim blogu mam to opisane, erix ma to też opisane, stormfly też ma to opisane na swoim blogu, ale wytłumaczę Ci co robisz źle:

Kod
RewriteRule ^(.*)\.php$ index.php?name=$1 [L]


Ja bym Ci radził zastosować html zamiast php, ładniej wygląda winksmiley.jpg

Musisz escepować kropke czyli za pomocą znaku ucieczki jakim jest prawy slash. I najlepiej jeszcze ustalić DirectoryIndex na index.php
paw-e-l
Kod
RewriteRule ^(.+)\.php$ index.php?name=$1 [L]


to powinno przekierować np:
www.mojastrona.pl/index.php?name=jakas_strona
na
www.mojastrona.pl/jakas_strona.php

znowu się spóźniłem haha.gif

wiem wiem, poprawiłem winksmiley.jpg
luciusz
Naprawde szukałem, może nawet te rzeczy wymienione widziałem :-) Reguły podane przez was już próbowalem. Nie działają. :-( Tzn. nie ma błędu, ale też wartość parametru name jest: GET [QUERY_STRING] => name=index , powinna być chyba name = faq ? Zapomniałem powiedzieć, nie wiem, czy to istotne, testuje i modyfikuje to wszystko pod adresem: http://testy.mojadomena.pl . Oczywiście pozostałe reguły usunąłem, zostawiłem tylko tą podaną przez was (osobno oczywiście sprawdzałem). Poza waszą regułą w pliku htaccess jest jeszcze : Options FollowSymLinks RewriteEngine On .
cojack
Sprawdź na samym mojadomena, bo nie wiem czy czasem na subdomenie nie trzeba ustawić RewriteBase na /testy, ale nie wydaję mi się.
mydoom.h
Cytat
Ja bym Ci radził zastosować html zamiast php, ładniej wygląda

Nie tylko ładniej, ale google to lubi winksmiley.jpg


Cytat
Sprawdź na samym mojadomena, bo nie wiem czy czasem na subdomenie nie trzeba ustawić RewriteBase na /testy, ale nie wydaję mi się.


Nie trzeba bo root subdomeny to / (w odniesieniu do subdomeny, a nie domeny)
cojack
Właśnie nie byłem tego pewien, bo nigdy nie robiłem takich rzeczy na subdomenie.
luciusz
wieczorem bede mogl dopiero przetestowac na domenie. Zauwazylem jeszcze cos: gdy dam regule -> RewriteRule ^xxx,([^/]*)\.php$ index.php?name=$1 [L] to wtedy dziala bez problemu na subdomenie (dla kazdej podstrony).
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.