Autor Zpráva
had
Profil *
ahoj, prosím, potřeboval bych pomoct s mod_rewrite. Už jsem to celkem vymyslel (funkčně), ale potřebuju ještě jednu podmínku:

aby z example.com/treneri se podstrčilo treneri.php.

mám tohle:

######
# rozhodci/trida1/ => rozhodci.php?p=trida1
######
RewriteCond 	%{REQUEST_URI} 	^(.*)/$
RewriteRule	^(.*)/(.*)/$	/$1.php?p=$2	[L]	

######
# rozhodci/trida1 => rozhodci.php?p=trida1
######
RewriteCond	%{REQUEST_URI}	^(.*)$
RewriteRule	^(.*)/(.*)$	/$1.php?p=$2	[L]

######
# rozhodci/ => rozhodci.php
######
RewriteCond	%{REQUEST_URI}	^(.*)/$
RewriteRule	(.*)/		/$1.php		[L]


jako ten poslední příklad...ale bez lomítka... když tam zadám:
RewriteRule  (.*)  /$1.php

tak mě to zakřičí v kombinaci s těma ostatníma error 500...
Kajman_
Profil *
Protože se to zacyklí. Stále se přidává .php i když už bylo přidáno. Můžete si testovat, zda má smysl přidat .php, zda takový soubor existuje.

RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.*)$ /$1.php [L]
had
Profil *
díky. já to tam viděl, že se pořád přidávalo .php, ale už jsem nevěděl jak to zapsat :-)
had
Profil *
tak...a teď to dělá problém, na který jsem nevzpomněl. CSS a JS soubory, který jsou ve složkách /css a /js, potřebuju proti tomu ochránit... adresu ./css/hlavni.css mi přepíše na /css.php a to já nechci...

celý kód:
######
# rozhodci/trida1/ => rozhodci.php?p=trida1
######
RewriteCond 	%{REQUEST_URI} 	^(.*)/$
RewriteRule	^(.*)/(.*)/$	/$1.php?p=$2	[L]	

######
# rozhodci/trida1 => rozhodci.php?p=trida1
######
RewriteCond	%{REQUEST_URI}	^(.*)$
RewriteRule	^(.*)/(.*)$	/$1.php?p=$2	[L]

######
# rozhodci/ => rozhodci.php
######
RewriteCond	%{REQUEST_URI}	^(.*)/$
RewriteRule	(.*)/		/$1.php		[L]

######
# rozhodci => rozhodci.php
######
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.*)$ /$1.php [L]


zkusím to napsat ještě trochu jináč, ale prostě nevím. díky
Davex
Profil
Dalo by se to zjednodušit:
######
# rozhodci/trida1/ => rozhodci.php?p=trida1
# rozhodci/trida1 => rozhodci.php?p=trida1
######
RewriteCond  %{REQUEST_FILENAME}  !-f
RewriteCond  %{REQUEST_FILENAME}  !-d
RewriteRule    ^([^/]+)/([^/]+)/?$    /$1.php?p=$2    [L]    

######
# rozhodci/ => rozhodci.php
# rozhodci => rozhodci.php
######
RewriteRule    ^([^/.]+)/?$        /$1.php        [L]

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0