Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [HTACCESS] Problem z flagami w mod_rewrite?
Forum PHP.pl > Forum > Serwery WWW
sexigrzes
Czesc,

Mam problem z htaccessami a konkretnie z mod_rewrite

Chciałbym zrobić na swojej stronie tak jak ma wordpress

Czyli że do każda strona po sleshu np. mojastrona.pl/kontakt prowadzi do kontakt.php, a jeśli nie znajdzie tego pliku to zastosowanie ma reguła mojastrona.pl/pages.php?p=tutajzmienna
I wtedy sprawdzam sobie w bazie czy zmienna jest jak tak to wyświetlana jest podstrona jak nie to 404.

I zrobiłem taki htaccess:

Kod
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule kontakt/?$ kontakt.php [L]
RewriteRule ^(.*)/?$ pages.php?p=$1 [L]


No i nie działa... Nie bardzo rozumiem bo generalnie jak usunę jakaś linijke to każda z osobna działa dobrze ale razem już nie, teoretycznie htaccess powinien po kolei robić kod i jak nie znajdzie swojego odpowiednika to jechać dalej w dół aż dopasuje...

może ktoś pomóc?

dzialam z tym problemem dalej

generalnie naprawiłem jedną rzecz (tzn. błąd rozwiązałem ale odkrył on kolejny)

a mianowicie złe wyrażenie regularne było w tej definicji powinno być:

RewriteRule ^([^.]*)/?$ pages.php?p=$1 [L]

Ale teraz mam problem z tym, że strona główna (index.php) też jest wrzucany do tego warunku pages i nie pojawias ie strona główna... czy ktoś wie jak wyłączyc taki przypadek?
trueblue
Dodaj warunek:
Kod
RewriteCond %{REQUEST_URI} !^/$
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.