2011-12-28 11 views
10

estoy usando a continuación rizo línea de comandos para saber si mi sitio es compatible con la compresión y almacenamiento en cachérizo retorno comando HTTP/1.1 406 no error aceptable

curl --head --compress http://www.mysite.com

devuelve el siguiente resultado

Http://1.1 406 Not Acceptable 
Date: Wed, 28 Dec 2011 07:41:32 GMT 
Server: Apache 
Content-Type: text/html; charset-iso-8859-1 

¿Qué piensas sobre el problema? Gracias

+0

¿Por qué utiliza 'curl' para comprobar si su El sitio web admite compresión y almacenamiento en caché. Ambos son encabezados enviados por Apache. – nand

+0

no es compatible con la compresión. el servidor de administración dice que sí y tengo que probarlo –

+0

¿Por qué no probar el php.ini? Hay funciones disponibles para él, como 'ini_get'. – nand

Respuesta

1

de la norma HTTP/1.1:

el recurso identificado por la solicitud es únicamente capaz de generar entidades de respuesta que tienen características de contenido no aceptables de acuerdo con las cabeceras aceptar enviados en la solicitud.

A menos que fuera una petición HEAD, la respuesta debe incluir una entidad que contiene una lista de características de entidad disponibles y ubicación (s) de la que el agente de usuario o el usuario puede elegir la más apropiada.

Así que deje caer el --head y debería ver cuál es incorrecto.

Es posible que el 406 sea lo que le parece correcto: el servidor no es compatible con la compresión. :)

+0

cuando me cae el '--head' me muestra las siguientes líneas ' 406 no es aceptable

no aceptable

. . ' estoy usando caracteres utf-8 en el título y la etiqueta h1 también –

+0

Pensé que mostraría más que eso. De todos modos, 406 significa básicamente "preguntaste algo que no puedo darte". 'curl --compress' envía' Accept-Encoding: deflate, gzip' - aparentemente su servidor no puede servir eso. En resumen: esta respuesta demuestra que su administrador de sistema es incorrecto, el servidor no es compatible con la compresión. Puede usar el indicador -v de curl para obtener una salida más detallada, que incluye los encabezados de solicitud. Eso puede ayudar a convencer a su administrador de sistemas. –

+0

cuando uso phpinfo() para mi sitio, me muestra este entorno variable 'HTTP_ACCEPT_ENCODING gzip, delate' –

26

En algunos casos tuve, falsificando el agente resolvieron este problema, mediante el uso de:

curl -A "Mozilla/4.0" 

Del mismo modo usando libcurl C-API:

curl_easy_setopt(curl, CURLOPT_USERAGENT, "Mozilla/4.0"); 
+0

Tuve que usar la cadena de agente completo" Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, como Gecko) Chrome/41.0.2228.0 Safari/537.36 "," Mozilla/5.0 "no funcionó. ¡Gracias! –

+1

El agente falso funcionó exactamente como se me proporcionó. ¡Gracias! – Animal451

Cuestiones relacionadas