nginx - 将所有不存在的文件请求重定向到索引页?

nginx - 将所有不存在的文件请求重定向到索引页?

我有一个简单的网站,其中包含 1 个 html 文件index.html。我希望所有输入该类型的用户example.com/abcde都将被重定向到example.com 当然,所有指向资源文件(images/css/js 等)的链接都应该有效

目前,我有这个:

location / {
    try_files $uri /index.html;
}

此设置有效,用户尝试打开时会看到索引页example.com/abcde。但浏览器中的 URL 不会改变...如何重写 URL?

答案1

您不一定需要重写。

您可以使用重定向作为后备位置:

location / {
    try_files $uri $uri/ @fallback;
}

location @fallback {
    return 301 http://example.com;
}

相关内容