
Eu tenho um servidor Wordpress em www.mydomain.com/A/B
A configuração do Nginx é como:
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;
}
...
}
Isso está funcionando bem.
O que quero fazer agora é redirecionar um caminho legado para o novo caminho.
Basicamente eu quero www.mydomain.com/A/B/C/XXX/YYY/ZZZ
--> www.mydomain.com/A/B/XXX/YYY/ZZZ
. Removendo /C
.
Acredito que poderia fazer isso com:
location /A/B/C {
try_files $uri $uri/ /A/B/index.php?$args;
}
Mas não funcionou. Então eu tentei
location /A/B/C {
proxy_pass http://localhost/A/B; # note the trailing slash here, it matters!
}
Acho que talvez precise de outra maneira, já que preciso do /XXX/YYY
caminho após o arquivo /C
.
Qualquer ajuda será apreciada. Obrigado.
Responder1
Você precisará reescrever o URL para remover o C
elemento path.
Por exemplo:
rewrite ^(/A/B/)C/(.*)$ $1$2 permanent;
Você pode colocar isso no server
bloco ou em um location ^~ /A/B/C/
bloco.