- 5.1, 7.1 és gamer fejhallgatók
- Bemutatkozott a HHKB legújabb, Topre kapcsolókkal szerelt billentyűzete
- Nagyon nem szokványos módon ment tönkre egy ASML gép Kínában…
- DUNE médialejátszók topicja
- Fujifilm X
- TCL LCD és LED TV-k
- Kutyának sem kellenek a 8 GB-os VGA-k?
- Akciókamerák
- Vezetékes FÜLhallgatók
- AMD K6-III, és minden ami RETRO - Oldschool tuning
Új hozzászólás Aktív témák
-
cucka
addikt
válasz
DNReNTi
#17244
üzenetére
A kérdésedre a válasz egyértelmű lesz, amint megérted, hogy mit is csinál a htaccess-ed.
Röviden: a mod_rewrite apache modult használod. Ez arra jó, hogy ha bejön egy kérés a webszervernek, akkor azt bizonyos feltételek esetén átváltoztatja egy másik request-é.
Például adott egy ilyen URL, hogy http://itcafe.hu/tema/php_kerdesek_2/hsz_17201-17300.html
Valószínű, hogy ez nem egy létező filera mutat egy szerveren, hanem a mod_rewrite átírja valami hasonlóra:
http://itcafe.hu/forum.php?name=php_kerdesek_2&from=17201&to=17300
Csak példa, nem tudom, hogy működik valójában a RIOS..Alapesetben az Apache webszerver egy adott könyvtárban található fileokat tud kiszolgálni. Tehát fenti esetben ha nem lenne mod_rewrite, akkor a hsz_17201-17300.html nevű filet kerené az URL-ben megadott könyvtárban.
A te esetedben ugyanez történik. Létrehozol egy rewrite szabályt, ami csak akkor teljesül, ha a hivatkozott tartalom nemlétező file és nemlétező könyvtár (ez a két RewriteCond). Az átírási szabály az átdobja a PHP-nek a kérést. (Ez a RewriteRule sor)Namost ez azt eredményezi, hogy MINDEN olyan kérést, ami egy nemlétező filera vagy könyvtárra mutat, azt át fogja dobni a PHP-nak. Ha írok egy szkriptet ami random fileokat kérdezget a szerveredtől, kb. mindegyik kérésem be fog hívni a php szkriptedbe (hacsak nem találom ki randomra egy létező file nevét a szerveren). Remélhetőleg innen te is össze tudod rakni, hogy az általad vázolt plusz szabály miért csak látszólagos megoldás a problémádra.
A valódi megoldást már leírták, ha így akarod használni a mod_rewrite-ot, akkor a PHP le kell tudja kezelni a hibás request-eket is. Pl.
<?php
function isRequestValid(){
//ezt neked kell megirni
}
if (!isRequestValid()){
http_response_code(404);
die();
}
//a program többi alkatrésze..
?>
Új hozzászólás Aktív témák
- sziku69: Fűzzük össze a szavakat :)
- 5.1, 7.1 és gamer fejhallgatók
- Okos Otthon / Smart Home
- Bemutatkozott a HHKB legújabb, Topre kapcsolókkal szerelt billentyűzete
- Nagyon nem szokványos módon ment tönkre egy ASML gép Kínában…
- Luck Dragon: Asszociációs játék. :)
- DUNE médialejátszók topicja
- Tőzsde és gazdaság
- Fujifilm X
- Konzolokról KULTURÁLT módon
- További aktív témák...
- MSI Katana GF76 - 17.3"FHD 144Hz - i5-11400H - 8GB - 512GB - Win11 - RTX 3050 Ti - MAGYAR
- 2027ig GYÁRI garancia Lenovo V14 / Ryzen3-7320 / 8gb DDR4 ram / 500gb NvMe SSD / WIN11
- Moza R5 bundle +brake kit + formula es wheel eladó
- i5 9600K GEFORCE RTX 2060 6GB DDR6 16GB RAM Gamer PC
- Xiaomi Redmi Note 12 Pro 5G 128GB, Kártyafüggetlen, 1 Év Garanciával
- GYÖNYÖRŰ iPhone 12 Pro Max 128GB Blue -1 ÉV GARANCIA - Kártyafüggetlen, MS2107, 100% Akkumulátor
- LG 27GP850P-B - 27" NANO IPS - 2560x1440 - 180Hz 1ms - NVIDIA G-Sync - AMD FreeSync - HDR 400
- HP 65W töltő eladó
- ÁRGARANCIA!Épített KomPhone Ryzen 5 7500F 32/64GB RAM RX 7800 XT 16GB GAMER PC termékbeszámítással
- (Cini) Minis Forum mini PC Ryzen AI 9 HX 370 AMD Radeon 890M RAM és SSD nélkül! 1 év garanciával
Állásajánlatok
Cég: NetGo.hu Kft.
Város: Gödöllő
Cég: Promenade Publishing House Kft.
Város: Budapest



