Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

Php gzip incoding/htaccess/Ie 11 probleem

Pagina: 1
Acties:

  • Guillome
  • Registratie: Januari 2001
  • Niet online
Hallo,

Ik wil mijn css en js bestanden graag allemaal in 1 compressed js/css bestand plaatsen.
In PHP gebruik ik:
PHP:
1
file_put_contents($destFile, gzencode($output, 9));


In mijn htaccess staat dit:
code:
1
2
3
4
5
<filesMatch "scripts.js$">
    Header set Content-Encoding x-deflate
    Header set Content-Encoding compress
    Header set Content-Encoding x-gzip
</filesMatch>


In Chrome en Firefox werkt dit prachtig.
IE11 decompressed `m niet. Ik kan maar niet achterhalen hoe dit komt.
Iemand een idee?

If then else matters! - I5 12600KF, Asus Tuf GT501, Asus Tuf OC 3080, Asus Tuf Gaming H670 Pro, 48GB, Corsair RM850X PSU, SN850 1TB, Arctic Liquid Freezer 280, ASUS RT-AX1800U router


Verwijderd

Post de waarde van de Accept-Content-Encoding header eens. Bedenk ook eens voor de grap waarvoor deze header bedoeld is, en wat het zou betekenen als de header meerdere keren voorkomt. Post dus ook maar even de respons headers.

Maar waarom laat je dit niet gewoon over aan de webserver?

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 20-11 11:59

NMe

Quia Ego Sic Dico.

Dit heeft inderdaad niks te zoeken op scriptniveau? :?

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


  • Osiris
  • Registratie: Januari 2000
  • Niet online
En zelfs al zou je dit op script niveau willen doen (al wil je dat niet, zie commentaar hierboven :+), waarom dan niet header() gebruiken, óók op script niveau? Je bent nu wel erg onhandig bezig mijns inziens..

  • Guillome
  • Registratie: Januari 2001
  • Niet online
Sorry, hier ben ik niet heel erg in thuis.

Hoe kan ik dit door de webserver laten afhandelen dan? Dat zou geweldig zijn. Dus dat de js van 250kb niet wordt verstuurd, maar de ingepakte van 32kb.

Even kleine extra uitleg.
In de main index.php genereer ik wanneer nodig de js en css file. Deze slaat `m gecompressed op.
Vervolgens laadt ik gewoon met <script scr.. de gecompressede file in.
In Firefox en Chrome gaat dit dus goed maar IE niet.

Maar dit is dus zo te horen niet de goede manier

[ Voor 66% gewijzigd door Guillome op 30-11-2013 15:28 ]

If then else matters! - I5 12600KF, Asus Tuf GT501, Asus Tuf OC 3080, Asus Tuf Gaming H670 Pro, 48GB, Corsair RM850X PSU, SN850 1TB, Arctic Liquid Freezer 280, ASUS RT-AX1800U router


  • Gomez12
  • Registratie: Maart 2001
  • Laatst online: 17-10-2023
Elke behoorlijke webserver heeft gewoon ondersteuning voor gzip ingebouwd en dan wordt gelijk goed gekozen of het bestand wel of niet gegzipt moet worden (waar jij het altijd doet)

En voor het hoe verwijs ik je naar de handleiding van je webserver, want zonder webserver naam kunnen we wel gaan gokken, maar het staat ook gewoon 10.000x op inet uitgelegd.

  • DJMaze
  • Registratie: Juni 2002
  • Niet online
Guillome schreef op zaterdag 30 november 2013 @ 14:26:
In Chrome en Firefox werkt dit prachtig.
IE11 decompressed `m niet. Ik kan maar niet achterhalen hoe dit komt.
Iemand een idee?
IE11 decompressed hem wel, maar dat doet ie maar 1x.
Chrome en Firefox decompressen hem waarschijnlijk 2x.

PHP:
1
2
<?php
file_put_contents('scripts.js', file_get_contents('http://example.org/scripts.php'));


En bekijk dan eens de broncode van scripts.js

[ Voor 4% gewijzigd door DJMaze op 30-11-2013 18:03 ]

Maak je niet druk, dat doet de compressor maar


  • NMe
  • Registratie: Februari 2004
  • Laatst online: 20-11 11:59

NMe

Quia Ego Sic Dico.

Guillome schreef op zaterdag 30 november 2013 @ 15:24:
Sorry, hier ben ik niet heel erg in thuis.

Hoe kan ik dit door de webserver laten afhandelen dan? Dat zou geweldig zijn. Dus dat de js van 250kb niet wordt verstuurd, maar de ingepakte van 32kb.
Nou, bijvoorbeeld zo: http://betterexplained.co...te-with-gzip-compression/. Bedenk je bijvoorbeeld eens dat je niet alleen die ene file moet gzippen, maar eigenlijk alle HTML en CSS die over de lijn gaat.

De kans is groot dat je host sowieso al default naar gzip trouwens. Check even de Content-Encoding-header die je site terugstuurt in de response headers, uiteraard zonder je gzip-code hierboven.

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


  • Guillome
  • Registratie: Januari 2001
  • Niet online
Thanks a lot! Er gaat een wereld voor me open :+
De webserver regelt het vanaf nu!

If then else matters! - I5 12600KF, Asus Tuf GT501, Asus Tuf OC 3080, Asus Tuf Gaming H670 Pro, 48GB, Corsair RM850X PSU, SN850 1TB, Arctic Liquid Freezer 280, ASUS RT-AX1800U router

Pagina: 1