FOUT 330 (NET :: ERR_CONTENT_DECODING_FAILED):

Onlangs migreerden we naar een nieuwe server. Na 2 dagen kreeg ik de volgende problemen

1) We hadden een crash op een sessietafel, die we gemakkelijk hebben opgelost door het opnieuw te herstellen

2) We lopen OpenX als onze Adserver, en het is ook gecrasht, maar er is geen bewijs in fout. LOG
Laten we u inloggen, maar op het moment van op zoek naar dashboard.php krijgen we de:

Error 330 (net::ERR_CONTENT_DECODING_FAILED): (Google Chrome)

en

De pagina die u probeert te bekijken, kan niet worden weergegeven omdat het een ongeldige of niet-ondersteunde vorm van compressie gebruikt. (Firefox)


OpenX gebruikt de volgende services op PHP:

OpenX vereist:
http://www.openx.com/docs/2.8/adminguide/system%20requirements

OpenX gebruikt de standaard PHP-instellingen. Serverbeheerders veranderen echter soms deze instellingen. Controleer voordat u OpenX installeert Controleer of de volgende instellingen correct zijn:

Magic_Quotes_runtime moet uit zijn
Safe_Mode moet uit zijn
Registreer_argc_argv moet staan ​​als u onderhoud wilt uitvoeren via opdrachtregel
Bestand_Uploads moeten worden ingeschakeld om HTTP-bestandsuploads toe te staan
OpenX vereist de volgende PHP-extensies:

Ofwel de mysqlExtension of de pgsql. De mysqliExtension wordt niet ondersteund.
De ZLIB-extensie, om links in gecomprimeerde flitsbestanden te converteren die wordt gegenereerd door Flash MX.
De FTP-extensie. Als dit niet aanwezig is, probeert OpenX het te simuleren, wat een minder stabiele oplossing kan zijn.

De GD-extensie, om grafieken op de startpagina te genereren. Als de extensie niet is ingeschakeld, kunt u geen grafieken of statistieken bekijken op uw startpagina.
Ofwel de OpenSSL-extensie of een SSL-enabled Curl-extensie is vereist om in te loggen op de startpagina. Als SSL niet is ingeschakeld, ontvangt u een foutmelding op de startpagina, maar er is geen impact op operaties.


Elke aanwijzing op mogelijke redenen of over het verzamelen van meer informatie zal zeer op prijs worden gesteld.
Bedankt


Antwoord 1, Autoriteit 100%

Het gebeurt wanneer de headers van uw HTTP-aanvraag beweren dat de inhoud GZIP is gecodeerd, maar dat is het niet.
Schakel de GZIP-coderingsinstelling uit of zorg ervoor dat de inhoud in feite is gecodeerd.


Antwoord 2, Autoriteit 42%

i ingeschakeld zlib.output_compressionIN php.inien het leek het probleem voor mij op te lossen.


Antwoord 3, Autoriteit 15%

Codes moeten tijdens het opnemen UTF8 zonder bom opslaan. Soms, schriftelijke codes met (notitieblok ++) of andere coderingshulpmiddelen en UTF8-coderen, optreedt deze fout.
Het spijt me, ik weet het niet Engels. Dit is gewoon mijn ervaring.


Antwoord 4, Autoriteit 6%

Deze fout veroorzaakt door uitgangsbufferingsmodules Extension (OB_GZHHANDLER) toegevoegd. Hoewel het gebruik van het buffering van de productie bij het starten van OB_START () en het beëindigen van OB_FHUSH ()

<?php   
    ob_start( 'ob_gzhandler' ); 
    echo json_encode($array);
    ob_end_flush();
?>

Gebruik dit:

<?php   
    ob_start(); 
    echo json_encode($array);
    ob_flush();
?>

Antwoord 5, Autoriteit 4%

Als u de CodeigniterFramework wilt gebruiken, maakt u dit dan gewoon in Config-bestand:

$config['compress_output'] = FALSE;

en in php.iniconfiguratiebestand, gebruik:

zlib.output_compression=On

Antwoord 6

Gebruik je de functie ob_start(ob_gzhandler)? Als dat zo is en als u inhoud boven de functie ob_start(ob_gzhandler)uitvoert, krijgt u deze foutmelding. U kunt deze functie niet gebruiken of geen inhoud boven deze functie uitvoeren. De callback-functie ob_gzhandlerbepaalt welk type inhoudcodering de browser accepteert en geeft de uitvoer dienovereenkomstig terug. Dus als u inhoud boven deze functie uitvoert, kan de codering van de inhoud verschillen van de uitvoerinhoud van ob_gzhandleren deze fout veroorzaken.


Antwoord 7

Voor het geval iemand nog steeds op zoek is naar de oorzaak van dit hatelijke probleem, er is een oplossing om het veroorzakende bestand te achterhalen. https://www.drupal.org/node/1622904#comment-10768958van de Drupal-gemeenschap.

En ik citeer:

Bewerken

includes/bootstrap.inc:

functie drupal_load(). Het is een korte functie. Zoek de volgende regel:
include_once DRUPAL_ROOT . '/' . $filename;
Vervang het tijdelijk door

ob_start();
include_once DRUPAL_ROOT . '/' . $filename;
$value = ob_get_contents();
ob_end_clean();
if ($value !== '') {
  $filename = check_plain($filename);
  $value = check_plain($value);
  print "File '$filename' produced unforgivable content: '$value'.";
  exit;
}

Antwoord 8

Nog een idee voor iedereen die dit krijgt…

Ik had wat gzipped svg, maar er was een php-fout in de uitvoer, die deze foutmelding veroorzaakte. (Omdat er tekst in het midden van gzip binary stond.) Het oplossen van de php-fout loste het op.


Antwoord 9

Gzip-compressie inschakelen in php.ini:

zlib.output_compression = On

En voeg dit toe aan uw .htaccess-bestand:

<IfModule mod_deflate.c>
  # Compress HTML, CSS, JavaScript, Text, XML and fonts
  AddOutputFilterByType DEFLATE application/javascript
  AddOutputFilterByType DEFLATE application/rss+xml
  AddOutputFilterByType DEFLATE application/vnd.ms-fontobject
  AddOutputFilterByType DEFLATE application/x-font
  AddOutputFilterByType DEFLATE application/x-font-opentype
  AddOutputFilterByType DEFLATE application/x-font-otf
  AddOutputFilterByType DEFLATE application/x-font-truetype
  AddOutputFilterByType DEFLATE application/x-font-ttf
  AddOutputFilterByType DEFLATE application/x-javascript
  AddOutputFilterByType DEFLATE application/xhtml+xml
  AddOutputFilterByType DEFLATE application/xml
  AddOutputFilterByType DEFLATE font/opentype
  AddOutputFilterByType DEFLATE font/otf
  AddOutputFilterByType DEFLATE font/ttf
  AddOutputFilterByType DEFLATE image/svg+xml
  AddOutputFilterByType DEFLATE image/x-icon
  AddOutputFilterByType DEFLATE text/css
  AddOutputFilterByType DEFLATE text/html
  AddOutputFilterByType DEFLATE text/javascript
  AddOutputFilterByType DEFLATE text/plain
  AddOutputFilterByType DEFLATE text/xml
  # Remove browser bugs (only needed for really old browsers)
  BrowserMatch ^Mozilla/4 gzip-only-text/html
  BrowserMatch ^Mozilla/4\.0[678] no-gzip
  BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
  Header append Vary User-Agent
</IfModule>

Antwoord 10

Ik ervoer dit probleem op een Drupal Site en geen van de andere oplossingen in deze thread hielp. Nadat een probleemoplossing heb gevonden, vond ik dat de local.tingtings.php een sluittag had met een ruimte nadat het zo is, dus:

<?php
$databases = array(
  'default' =>
  array (
    'default' =>
    array (
      'driver' => 'mysql',
      'database' => 'xxx',
      'username' => 'xxx',
      'password' => 'xxx',
      'port' => '',
      'host' => 'xxx',
    ),
  ),
);
?>
 

Local.Settings.php bijwerken naar het volgende opgelost:

<?php
$databases = array(
  'default' =>
  array (
    'default' =>
    array (
      'driver' => 'mysql',
      'database' => 'xxx',
      'username' => 'xxx',
      'password' => 'xxx',
      'port' => '',
      'host' => 'xxx',
    ),
  ),
);

de sluiting “? & GT;” PHP-tag is hier niet nodig. Als u ervoor kiest om een ​​sluitlabel te gebruiken, moet u ervoor zorgen dat er geen tekens / witruimte erna zijn.


Antwoord 11

Ik had vanmorgen een beetje een dummy moment toen ik me realiseerde wat dit probleem voor mij heeft veroorzaakt.

Het vreemde is dat het verzoek faalde in zowel Firefox als Chrome, maar werkte toen ik probeerde toegang te krijgen via Fiddler Web Debugger.

Voor mij was het probleem dat ik een karakter in een van de PHP-bestanden in het project verkeerd had getypt. Ik heb dit pas opgemerkt tot ik Git heb gecontroleerd op wijzigingen in het project.

In mijn zaak had ik: m<?php runMyProgram(); ?>.

Toen ik de m had gewist, begon hij weer te werken.


Antwoord 12

In mijn geval gebeurde het bij het toevoegen van een nieuwe applicatie aan IIS die met Apache als proxy moest worden gebruikt.

Ik moest ProxyHTMLEnable Oninstellen op ProxyHTMLEnable Offom de inhoud te krijgen. (Het lijkt erop dat sommige js-code de fout hebben veroorzaakt, maar dit gaf me in ieder geval iets om mee te werken.)

IIS verzendt de pagina-inhoud Content-Encoding: gzip

<Proxy "http://192.168.1.1:81">
    ProxyHTMLEnable On   #> change this to Off
    ProxyHTMLURLMap  ...  ...
</Proxy>

Antwoord 13

We hadden dit probleem ook bij het upgraden van ons systeem naar Revive. Nadat we GZIP hadden uitgeschakeld, ontdekten we dat het probleem zich nog steeds voordeed. Bij verder onderzoek ontdekten we dat de bestandspermissies niet correct waren na de upgrade. Een eenvoudige recursieve chmod deed het.


Antwoord 14

Er is een slechte Java-bug die dit veroorzaakt:
https://bugs.java.com/view_bug.do?bug_id=JDK- 8189789


Antwoord 15

Een veel gebruikelijker antwoord is dat je een fout hebt die wordt toegevoegd aan wat je ook comprimeert. De oplossing is om display_errors = Offin te stellen in uw php.ini-bestand (controleer in uw terminal of deze aan staat door php --infouit te voeren en zoek naar “display_errors”)

Dat zou het moeten doen. En, hoe ontdek je welke fouten je eigenlijk bent? Controleer uw PHP-foutlogboeken wanneer u op die route/pagina komt.

Succes!


Antwoord 16

Ik zag deze fout in combinatie met de PageSpeed-module ingeschakeld. De PageSpeed-module heeft een cache die GZIP-gecomprimeerd kan zijn. Dus blijkbaar wat kan gebeuren, is dat inhoud dubbel gecomprimeerd wordt.

Om bronnen te herschrijven, moet PageSpeed ze server-side cachen. Tot 1.10.33.0, deze middelen waren ongecomprimeerd opgeslagen. Om het diskegebruik te verminderen, de serverlatentie te verlagen, ondersteunt u hogere compressieniveaus en verhoogt de serverdoorvoer, de HTTPCACE kan automatisch de comprimeerbare bronnen gokken, omdat ze in de cache worden opgeslagen. Om de cachecompressie te configureren, stelt u HTTPCCACHECOMPRINGLEVEL in op waarden tussen -1 en 9, waarbij 0 uitgeschakeld zijn, -1 als de standaardcompressie van GZIP, en 9 Maximale compressie zijn. De standaardwaarde is 9, maximale compressie.

Ik heb het opgelost door deze regel toe te voegen aan mijn PageSpeed-configuratie:

HTTPCCACHECOMPRESSIONLEVEL 0

die de compressie uitschakelt.

Other episodes