- gban: Ingyen kellene, de tegnapra
- Luck Dragon: Asszociációs játék. :)
- sziku69: Fűzzük össze a szavakat :)
- koxx: Bloons TD5 - Tower Defense játék
- GoodSpeed: AMD Ryzen 9 9900X (100-100000662WOF)+ Samsung 990 PRO 2TB MZ-V9P2T0BW
- sziku69: Szólánc.
- Klaus Duran: Youtube AI szinkron
- Elektromos rásegítésű kerékpárok
- ubyegon2: Airfryer XL XXL forrólevegős sütő gyakorlati tanácsok, ötletek, receptek
- laskr99: Processzor és videokártya szilícium mag fotók újratöltve!
Hirdetés
Ú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..
?> -
wis
tag
válasz
DNReNTi #17244 üzenetére
Mivel a nem létező fájlnál továbbfut az index.php-ra ami létezik így 200. Innentől a te kódod felelőssége, hogy nem létező oldalnál 404-et dobjon.
Egyes böngészők pedig automatikusan betöltik a /favicon.ico-t.
Teória a kétszeres favicon betöltésre: mivel elsőre 200-as kódot kap, de a tartalom nem érvényes kép, így újra megpróbálja.
Új hozzászólás Aktív témák
- A lemondást javasolja az Intel vezetőjének Donald Trump
- Szünetmentes tápegységek (UPS)
- gban: Ingyen kellene, de tegnapra
- Kerti grill és bográcsozó házilag (BBQ, tervek, ötletek, receptek)
- Kormányok / autós szimulátorok topikja
- Mibe tegyem a megtakarításaimat?
- Milyen házat vegyek?
- Revolut
- Kerékpárosok, bringások ide!
- Azonnali fáradt gőzös kérdések órája
- További aktív témák...
- AKCIÓS áron eladó HP ZBOOK STUDIO G8 WORKSTATION! i7-11850H/32GB/RTX A2000/15,6"FHD/IPS/GARANCIA
- Asus TUF Dash F15 Gamer Laptop szép állapotban (RTX 3070, i7)
- Pioneer VSX-521-K + Jamo Sub 210
- YAMAHA RX-V6A 7.2 házimozi erősítő eladó
- Lenovo Ideacentre AIO 5 24ALC6 PC Ryzen 7 5700U 6 Mag 16GB RAM 512GB NVME SSD Gar.
- MacBook felvásárlás!! MacBook, MacBook Air, MacBook Pro
- Lenovo ThinkCentre M720q/ Dell OptiPlex 3070/ Hp EliteDesk 800 G4-G5 mini, micro PC-Számla/garancia
- Bomba ár! HP EliteBook 840 G4 - i5-7GEN I 16GB I 256GB SSD I 14" FHD Touch I Cam I W10 I Garancia!
- Bowers/Wilkins Px7 S2 fejhallgatók
- Gamer Notebook! Acer Nitro 5! Csere-Beszámítás! I5 11400H / RTX 3050Ti / 16GB DDR4 / 500GB SSD!
Állásajánlatok
Cég: FOTC
Város: Budapest