Archivo

Entradas Etiquetadas ‘proxy’

Solucionar error 417 Expectation Failed en Team Foundation con proxy Squid

miércoles, 29 de octubre de 2014 Sin comentarios

Si en tu red estás usando un proxy HTTP y además utilizas el software de control de versiones Team Foundation, te va a salir el error de conexión HTTP 417 Expectation Failed.

Para solucionar el problema puedes agregar la IP del Team Foundation a la lista de direcciones ignoradas por el proxy para que las conexiones al TF no pasen por éste.

The purpose of the 100 (Continue) status (see section 10.1.1) is to allow a client that is sending a request message with a request body to determine if the origin server is willing to accept the request (based on the request headers) before the client sends the request body. In some cases, it might either be inappropriate or highly inefficient for the client to send the body if the server will reject the message without looking at the body.

Para solucionar el error puedes configurar que no pase por el proxy las IP del Team Foundation o configurar Squid para que ignore el header “Expect: 100-continue” cambiando esta línea al archivo squid.conf

#ignore_expect_100 off

Y dejarla en

ignore_expect_100 on

Finalmente reiniciar el servicio y el problema de acceso se habrá solucionado.

Registrar IP del header X_FORWARDED_FOR en Apache

sábado, 22 de marzo de 2014 Sin comentarios

Hay algunas instalaciones de Apache que no son accesibles directamente desde Internet, sino que a través de un proxy inverso cache o balanceo de carga, esto significa que en los registros (logs) de acceso las visitas aparecerán con la IP del proxy/balanceador en lugar de la IP del visitante.

image

La IP real del visitante la envía el proxy/balanceador en el header “X_FORWARDED_FOR” el que debe usarse en los scripts en lugar de REMOTE_ADDR, para que Apache la utilice en los registros en el archivo de configuración del virtual host se deben agregar estas líneas: (el del sitio por defecto está ubicado en /etc/apache2/sites-available/default)

LogFormat «%{X-Forwarded-For}i %l %u %t \»%r\» %>s %b \»%{Referer}i\» \»%{User-Agent}i\»» proxy
SetEnvIf X-Forwarded-For «^.*\..*\..*\..*» forwarded
CustomLog ${APACHE_LOG_DIR}/direct.log proxy env=forwarded

image

Esto creará un archivo direct.log en la carpeta de logs del apache que es por defecto /var/log/apache2 en Debian/Ubuntu Server.

Luego de guardar los cambios y reiniciar el servicio aparecerá el mencionado archivo, el que contendrá la IP del visitante como primer campo.

image

Fuente: http://www.techstacks.com/howto/log-client-ip-and-xforwardedfor-ip-in-apache.html (incluye script para probar el registro)