8000 GitHub - nach131/Docker-nginx-log
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

nach131/Docker-nginx-log

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 

Repository files navigation

NGINX con Lua para Captura de Request Body

NGINX con soporte para Lua a través de la imagen fabiocicerchia/nginx-lua. El objetivo principal es registrar el cuerpo de las solicitudes POST y responder adecuadamente a los distintos métodos HTTP.

Características

  • Captura y muestra el cuerpo (body) de las solicitudes POST.
  • Registra la información en los logs en formato JSON.
  • Responde con 405 Method Not Allowed para métodos distintos de POST.
  • Usa Lua para manejar la lógica dentro de NGINX.

Estructura del Proyecto

/nginx.conf      # Configuración de NGINX con Lua
/docker-compose.yml  # Definición del servicio NGINX en Docker
/logs/          # Carpeta donde se almacenan los logs de acceso

Instalación y Uso

1. Clonar el repositorio

git clone git@github.com:nach131/Docker-nginx-log.git
cd Docker-nginx-log

2. Ejecutar con Docker Compose

docker-compose up -d

3. Enviar una solicitud POST

curl -X POST http://localhost -d '{"key": "value"}' -H "Content-Type: application/json"

Respuesta esperada:

Received Body: {"key": "value"}

4. Probar con otro método HTTP

curl -X GET http://localhost

🚫 Respuesta esperada:

Method Not Allowed

5. Ver logs de NGINX

Para ver el cuerpo de la solicitud en los logs, ejecuta:

docker logs nginx_server
{"time": "2025-03-14T12:22:20+00:00", "remote_addr": "172.19.0.1", "method": "GET", "uri": "/", "body": "", "status": "405", "agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:135.0) Gecko/20100101 Firefox/135.0"}
{"time": "2025-03-14T12:22:25+00:00", "remote_addr": "172.19.0.1", "method": "POST", "uri": "/", "body": "{\"key\": \"value\"}", "status": "200", "agent": "curl/8.7.1"}
{"time": "2025-03-14T12:22:36+00:00", "remote_addr": "127.0.0.1", "method": "GET", "uri": "/", "body": "", "status": "405", "agent": "curl/8.12.1"}

Configuración en nginx.conf

La configuración de NGINX incluye:

  • Log en formato JSON para almacenar información de cada solicitud.
  • Bloque content_by_lua_block para leer y registrar el cuerpo de la solicitud.
  • Manejo de métodos HTTP permitiendo solo POST y devolviendo 405 en otros casos.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
0