Solução:
eu adicionei
rewrite ^/(.*)/$ /$1;
antes da regra no primeiro post, parece estar funcionando.
estou tendo dificuldades com uma relatividade simples reescrever regras / roteador na configuração nginx.
Tudo que eu quero fazer é, se solicitado, dir ou o arquivo 'host / my / request / caminho [/ [index.php]]' não existir, reescreva para 'host / my / request / path.php'
A reescrita atual funciona para:
host
host/
host/my/request/path
Mas não funciona para:
host/my/request/path/
Aqui está a parte de reescrita da configuração:
location / {
try_files $uri/ $uri $uri.php;
}
O log de erros informará:
Access forbidden by rule, request: "GET /my/request/path/ HTTP/1.0"
Hm, existe uma maneira melhor de resolver isso ou se livrar da barra final?
editar, regras mais elaborativas:
host[/] > host/index.php
host/index[/] > host/index.php
host/my/path[/] > if /path/index.php exists: host/my/path/index.php
else host/my/path.php
Solução:
eu adicionei
rewrite ^/(.*)/$ /$1;
antes da regra no primeiro post, parece estar funcionando.