try_files $uri $uri/ $uri.php /index.html;
Eu sou um pouco novo no Nginx aqui, então fique comigo -
Eu quero reescrever um URL como foo.bar.com/newfoo?limit=30
to foo.bar.com/newfoo.php?limit=30
.
Parece bem simples fazer algo assim rewrite ^([a-z]+)(.*)$ $1.php$2 last;
A parte em que estou confuso é onde colocá-lo - tentei minha mão em algumas diretivas de localização, mas estou fazendo errado.
Aqui está minha configuração de host virtual existente, onde devo implementar minha reescrita?
server {
listen 80;
listen [::]:80;
server_name foo.bar.com;
root /home/foo;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ /index.html;
}
location /doc/ {
alias /usr/share/doc/;
autoindex on;
allow 127.0.0.1;
deny all;
}
location ~ \.php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_pass unix:/tmp/php5-fpm.sock;
fastcgi_index index.php;
}
}
Obrigado!