我正在尝试在NGINX上建立一个php网站。我要使用的功能是一种具有“扩展”部分的方法,而无需重新加载页面,但还可以将状态存储在URL中。一个例子是这样:
我已经可以在JavaScript中使用history.state将其添加到url中,并且只要按一下按钮就可以使该部分扩展,但是我无法弄清楚允许重新路由所有请求的nginx配置将 / resume 和其他一些代码(例如 / projects 和 / contact )返回index.php,并将请求用作变量PHP。
我很确定.htaccess可以做到这一点,但是我正在使用NGINX并尽力避免使用任何类型的htaccess文件。
我当前的NGINX配置是这样的:
server {
server {
root /var/www/example.com/html;
index index.php index.html index.htm index.nginx-debian.html;
server_name example.com www.example.com;
location / {
try_files $uri $uri/ =404;
}
error_page 404 /404.html;
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
}
location ~ /\.ht {
deny all;
}
}
谢谢!