Nginx:将所有不存在的请求重定向到index.php

前端之家收集整理的这篇文章主要介绍了Nginx:将所有不存在的请求重定向到index.php前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我正在从Apache迁移到Nginx.

我目前正在使用自定义内容管理解决方案,该解决方案利用SERVER [‘request_uri’]来处理路由.

我要做的是重定向所有不存在的文件&目录请求/index.PHP,而不是更新客户端uri.但是,当文件存在时,我想返回它.

一个示例网址是:
localhost / content / page / 1< - 应该将$_SERVER ['request_uri']填充为/ content / page / 1
要么
localhost / public / script / exists.js< - 应作为实际文件返回.

最佳答案
您需要在Nginx vhost文件添加位置/块或更新当前位置/块.

如果找不到文件或目录,这会将所有请求重定向到index.PHP

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

这将进入您的服务器指令,有关更多信息,请访问http://wiki.nginx.org/HttpCoreModule

修改vhost文件后,需要重新启动Nginx

注意:服务器块的try_files指令在0.7.44中添加

猜你在找的Nginx相关文章