我尝试了很多方法来删除我的 php 扩展但都无法做到,以下是我试图实现的方法。
https://google.com/users/login.php>https://google.com/users/login
听起来很简单,但我似乎无法删除它,要么收到 500 内部错误,要么收到 404 错误
location /users/ {
# try_files $uri $uri/ =404;
rewrite ^/users/(.*) /users/(.*).php$1 break;
}
location ~ \.php$ {
# try_files $uri =404;
include snippets/fastcgi-php.conf;
include fastcgi_params;
fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
}
答案1
静态解决方案是:
location /users/login {
try_files $uri $uri.php =404;
}
如果你希望它更加动态,你必须将它放入你的 / 位置,这样它就会始终尝试从文件系统传递请求,如果文件系统上 url 的资源不存在,它会尝试解决以 .php 为后缀的 url:
location / {
try_files $uri $uri.php =404;
}