Corrección de ruta de imagen de Nginx al reescribir

Corrección de ruta de imagen de Nginx al reescribir

No estoy 100% seguro de si se trata de un error de Nginx o de configuración.

Jugando con las reescrituras, ya que nunca he sido muy bueno con ellas y logré conseguirlo, así que una vez que algo estuviera encendido, /profile/.*revisaría un archivo PHP y manejaría request_uri.

Funciona muy bien, hace su trabajo, pero todos los recursos, como las imágenes, se detienen porque intenta cargarlos en /profile/dist/img/...lugar de /dist/img/...hacerlo, lo que provoca que aparezca 404.

¿Necesito capturar esto en Nginx para que a cualquier tipo de archivo de imagen se le indique explícitamente que busque en esa carpeta establecida o es la forma en que están configurados los archivos/estructura?

Mi reescritura es:

location /profile/ {
       rewrite ^/profile/(.*) /profile_handler.php?url=$1;
    }

Aunque el archivo de reescritura en perfil_handler.php está en la carpeta raíz y hace referencia a un encabezado y pie de página tanto en la carpeta raíz, todas las etiquetas están probando /profile/img.

He intentado

 location ~ ^/profile/img/(.*) {
  try_files $uri /img/$uri;
}

pero no puedo hacerlo funcionar.

Respuesta1

Dale una vuelta a esto:

location /dist/img/ {
   try_files $uri =404;
}

location /profile/ {
   rewrite ^/profile/(.*) /profile_handler.php?url=$1;
}

información relacionada