Estoy tratando de crear una página 404 personalizada con Nginx. Mi archivo nginx.conf se ve así:
http { server { location / { root /nginx/html; } error_page 404 /custom_404.html; location = /custom_404.html { root /nginx/html; internal; } } }Cuando verifico con una URL como "/page_that_doesnt_exist", funciona bien.
Pero si agrego un final "/", por ejemplo, "/page_that_doesnt_exist/" o "/page_that_doesnt_exist/and_more_stuff", falla y muestra una pantalla en blanco (no la página predeterminada de nginx 404).
Cuando reviso los mensajes del servidor, me dice lo siguiente:
"GET /page_that_doesnt_exist/ HTTP/1.1" 404 280 "-" [error] 6#6: *3 open() "/nginx/html/page_that_doesnt_exist/error404.js" failed (2: No such file or directory), client: 172.17.0.1, server: , request: "GET /page_that_doesnt_exist/error404.js HTTP/1.1", host: "localhost:8080", referrer: "http://localhost:8080/page_that_doesnt_exist/" "GET /page_that_doesnt_exist/error404.js HTTP/1.1" 404 280 "http://localhost:8080/page_that_doesnt_exist/"Lo que entiendo significa que en lugar de que nginx busque mi archivo "custom_404.html" en mi carpeta "nginx/html", está agregando "page_that_doesnt_exist" al directorio. Por lo tanto, ahora busca en "nginx/html/page_that_doesnt_exist/" y no encuentra un archivo "custom_404.html" en ese directorio.
¿Qué estoy haciendo mal aquí?