Autor Zpráva
Kubo2
Profil
Dobrý deň, robím teraz jeden taký jednoduchý projekt, aby som sa čo to naučil (kalkulačku v PHP). Využívam pritom ako DirectoryIndex súbor calculator.php a chcel by som, aby sa v adrese vždy zobrazoval aj názov tohoto súboru - a zároveň každý požiadavok na iný PHP alebo HTML súbor bol presmerovaný na tento súbor, keďže ostatné súbory slúžia iba na includovanie a ako pomocné súbory, a nechcel by som, aby si ich niekto prezeral - pritom ich však chcem mať v tom istom adresári.
Napísal som si na to v mod_rewrite niečo takéto:
RewriteEngine on
RewriteCond %{QUERY_STRING} !^rw
RewriteRule \.(php(3|5)?|htm(l)?)$ calculator.php?rw=1 [R=301,L]
Ale nastal taký problém - síce presmerovanie teoreticky aj prakticky funguje, ale napríklad zadám adresu http://localhost/K2/K2%20Weblog/filip/bla.php, tak ma to presmeruje na adresu http://localhost/C:/wamp/www/K2/K2%20Weblog/filip/calculator.php?rw=1, čiže localhost a cesta na disku, čo nechcem. Prosím poraďte mi, ako zariadiť aby to presmerovalo na http://localhost/K2/K2%20Weblog/filip/calculator.php?rw=1?
Ďakujem, Kubo2.
Davex
Profil
Nevím, co se stane s tou mezerou, ale cíl přesměrování by měl být s kořenovou cestou nebo se musí přidat

RewriteBase /K2/K2%20Weblog/filip
Kubo2
Profil
Davex:
To znamena, ze cesta v RewriteBase sa prenesie medzi root HTTP_HOST-u a meno suboru? Cize sa to presmeruje na http://localhost/K2/K2%20Weblog/filip/calculator.php?rw=1 ?
Davex
Profil
Kubo2:
Ano. Při přesměrování se nemůže použít relativní cesta, protože mod_rewrite si jí často neumí celou správně domyslet a je potřeba jí definovat napevno.
Kubo2
Profil
Davex:
Aha. Tak úprimne ďakujem za rady, už to funguje :-)

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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

0