ie 9 JS, CSS include és a szép urlek
Sziasztok!
Problémám akadt a js, css használatnál IE9 alatt.
Van a következő htaccess sorom:HTML headerben ezek említendők:A probléma, hogy a fenti htaccessel, headerrel css fájlokra invalid MIME típust ír. A js fileban azonnal pedig hibát jelez a developer tools, már az 1 soron.
Ha a sima url-t hívom (valami.hu/details.php?id=100) akkor simán működik, ha szép url-t (valami.hu/details/100) akkor jönnek a hibák.
Firefox, és Chrome alatt gond nélkül megy minden, csak ie 9 alatt történik mindez.
Olvasgattam pár helyen de nem nagyon találtam igazán jó infót.
Valakinek van tippje?
■ Problémám akadt a js, css használatnál IE9 alatt.
Van a következő htaccess sorom:
RewriteRule ^details/?(.*)?/?$ details.php?id=$1
<base href="/">
<link href="css/style.css?v=1357649753" rel="stylesheet" type="text/css" />
<script src="js/details.js?v=1357574123"></script>
Ha a sima url-t hívom (valami.hu/details.php?id=100) akkor simán működik, ha szép url-t (valami.hu/details/100) akkor jönnek a hibák.
Firefox, és Chrome alatt gond nélkül megy minden, csak ie 9 alatt történik mindez.
Olvasgattam pár helyen de nem nagyon találtam igazán jó infót.
Valakinek van tippje?
AddType text/css
elvileg
A probléma az, hogy az URL-ek
/details
alatt fogja keresni a CSS fájlokat, ezért meg lesz hívva adetails.php
fájl, és onnantól kezdve az fogja kezelni a CSS-ed. A/css/style.css?v=1357649753
-nek működnie kellene, hasonlóan a JS esetén is.Több érdekesség is van
Pl, hogy a szép url esetén miért invalid a mime típus, hogy lehet köze ennek az urlhez.
És főleg, hogy jelezhet hibát a javascriptek első karakterén.
Poetro: Nem az általad írt dologra szolgálna a <base href="/"> ?
Ráadásul mint írtam a többi böngészőben kifogástalanul működik, még ie 10 alatt is, csak 9es alatt (és gondolom régebbi verziók) nem.
base href
stackoverflow mindig a barátod
maga a kérdező meg is adja rá a választ. egyrészt a base href mókának az elején kell lenni, másrészt valami UTF-8 BOM van nagy valószínűséggel a php fájlodban.
amúgy ha van rá mód szerintem használj abszolut url-eket, és akkor kihagyható ez a base href dolog.
a css és js fájlok után a GET paraméter gondolom a cache-elést hivatott kivédeni. nem biztos, hogy minden esetben működni fog.
csináld inkább valahogy így:
Köszi a tippet, de nincs bom
Abszolút url-ekhez csak akkor nyúlnék ha semmi más nem marad.
A css/js url-eknél természetesen csak fejlesztési időben van timestamp, production környezetben a tényleges verzió kerül a query stringbe.
Az a fura, hogy nem csak egy url van a htaccesben átírva, hanem többnél is alkalmazom a szabályt, és csak azoknál rendelkezik a gond ahol a komplexebb az url.
A következő htaccess esetén:
http://valami.hu/details/100 - itt megfő, se css, js hibák
Nem nagyon értem a variálást
.*
-ba beletartozik a/
is, szóval vagy.*?
kellene, amit nem biztos, hogy támogat a mod rewrite, vagy valami konkrétabb, mondjuk\d+
.