
Tengo un servidor de Wordpress en www.mydomain.com/A/B
La configuración de Nginx es la siguiente:
server {
listen 80 default;
root /var/www/html;
location / {
try_files $uri $uri/ /index.php$is_args$args;
}
location /A/B {
try_files $uri $uri/ /A/B/index.php?$args;
}
...
}
Esto está funcionando bien.
Lo que quiero hacer ahora es redirigir una ruta heredada a la nueva ruta.
Básicamente quiero www.mydomain.com/A/B/C/XXX/YYY/ZZZ
--> www.mydomain.com/A/B/XXX/YYY/ZZZ
. Eliminando /C
.
Creo que podría hacerlo con:
location /A/B/C {
try_files $uri $uri/ /A/B/index.php?$args;
}
Pero no funcionó. Entonces lo intenté
location /A/B/C {
proxy_pass http://localhost/A/B; # note the trailing slash here, it matters!
}
Creo que tal vez necesite otra forma ya que necesito el /XXX/YYY
camino después del /C
.
Cualquier ayuda se agradece. Gracias.
Respuesta1
Deberá reescribir la URL para eliminar el C
elemento de ruta.
Por ejemplo:
rewrite ^(/A/B/)C/(.*)$ $1$2 permanent;
Puedes colocar esto en el server
bloque o en un location ^~ /A/B/C/
bloque.