Nginx出现404 Not Found错误的详细解决方法

劉汉卿 2024-08-31 22:39:41电脑知识
590

在现代Web开发中,Nginx作为一款高性能的HTTP服务器和反向代理服务器,被广泛应用于各种网站和应用的部署。然而,在配置和使用Nginx的过程中,不少用户会遇到404 Not Found错误,这一问题常常让人感到困惑和无助。本文将详细介绍Nginx出现404 Not Found错误的原因及相应的解决方法,帮助读者快速定位并解决问题,确保网站和服务的正常运行。

Nginx出现404 Not Found错误的详细解决方法

Nginx出现404 Not Found错误的原因及解决方法

近日在部署项目时,出现了一些问题,如图

Nginx出现404 Not Found错误的详细解决方法

正常的登录界面是可以访问的,但是在登录之后访问之后的地址会报404错误,于是去查看是否配置有错误,但是查看之后发现,nginx.confconfig.js两个配置文件的ip和端口都是没有错误的

这个项目部署过好多次,没有出现过这样的错误。

这是原版没动过的解压缩后的nginx.conf的源文件

 Nginx出现404 Not Found错误的详细解决方法

圈起来的地方是应该按照项目配置对应的ip和监听的端口

listen对应的是端口,server_name对应的是访问的ip

但是发现当我去修改为实际ip和端口还是不能解决问题,经过查阅官方文档,了解到我们需要添加如下的一句话:

try_files $uri $uri/ /index.html;

记住,$uri是两个啊!!!!即$uri $uri(两个$uri之间有空格)!

这句话的作用是嘛呢?

用官方解释就是:

Checks the existence of files in the specified order and uses the first found file for request processing; the processing is performed in the current context. The path to a file is constructed from the file parameter according to the root and alias directives. It is possible to check directory's existence by specifying a slash at the end of a name, e.g. “$uri/”. If none of the files were found, an internal redirect to the uri specified in the last parameter is made. 

简单的翻译一下大致意思,差不多相当于高考报志愿这么个意思,从一志愿一直找到最后一个志愿,如果其中有满足要求的,那恭喜你考上了,找到最后一个都没有,那不好意思,清华落榜生就是你了!

用在Nginx中就是项目在加载的时候找文件用的,按照你给的文件顺序,一个一个的找,要是找到了就显示,找不到就显示404(文件路径丢失错误)。

添加的位置应当在这里:

Nginx出现404 Not Found错误的详细解决方法server下的location段里添加,此时再重新启动nginx就可以了

nginx.exe所在的目录内,点击地址栏,输入cmd,可直接在该目录下启动命令行,无需打开cmd后再跳转目录。

若之前没有关闭nginx服务,先停止再打开,如果已关闭,可以直接输入启动服务的命令

停止nginx服务命令:

nginx -s stop

 启动nginx服务命令:

start nginx

热部署nignx服务命令:

(但是不推荐使用这个命令,这个命令有时候是不起作用的,不如直接停了再启动)

nginx -s reload

重新启动nginx后,浏览器最好是清除缓存后再进行测试

可以直接在浏览器窗口按

Ctrl+Shift+Del

可直接打开清除缓存的对话框

重新测试,可以正常访问了

Nginx出现404 Not Found错误的详细解决方法

总结

通过本文的介绍,我们了解了Nginx出现404 Not Found错误的多种原因及其解决方法。无论是文件路径配置错误、目录权限问题,还是反向代理设置不当,都可能导致这一错误的发生。解决这些问题需要仔细检查Nginx配置文件、确保文件和目录的正确权限,以及验证反向代理的设置。希望本文提供的详细步骤和实用建议能为广大用户提供有效的帮助,使他们在遇到类似问题时能够迅速定位并解决问题,保障网站和服务的稳定运行。在未来的工作中,我们应持续关注Nginx的配置和优化,不断提高系统的可靠性和性能。

Nginx 404 Not Found
THE END
zhanid
勇气也许不能所向披靡,但胆怯根本无济于事

相关推荐

Nginx中禁止直接浏览器访问某文件但允许搜索引擎访问的配置方法
在网站运营中,部分文件需要限制直接通过浏览器访问,但允许搜索引擎爬虫(如Googlebot、Bingbot)抓取并展示在搜索结果中。Nginx作为高性能Web服务器,可通过灵活的配置实现...
2025-08-24 站长之家
733

Nginx中proxy_redirect指令使用方法详解
在Nginx反向代理配置中,proxy_redirect是一个至关重要的指令,用于修正后端服务器返回的重定向响应(如301/302)中的Location和Refresh头信息。本文ZHANID工具网将通过原理剖...
2025-06-10 编程技术
502

Nginx配置中allow和deny指令使用方法详解
在Nginx服务器配置中,allow和deny指令是控制客户端访问权限的核心工具,常用于限制特定IP、IP段或域名的访问。通过灵活组合这两个指令,可以实现白名单、黑名单、防爬虫、安...
2025-05-15 编程技术
762

Nginx中配置HTTP/2协议的步骤详解
HTTP/2作为HTTP协议的下一代版本,通过引入多路复用、头部压缩、流量优先级等特性,极大地提升了网络通信效率和性能。Nginx作为一款高性能的HTTP服务器,在支持HTTP/2协议方面...
2025-04-15 编程技术
471

Nginx中location和proxy_pass指令的作用及匹配规则详解
Nginx的强大功能之一在于其灵活的URL路由机制,特别是location和proxy_pass指令的配合使用。理解这两个指令的作用及其匹配规则,对于优化Web服务的性能和稳定性至关重要。本文...
2025-04-15 编程技术
590

Nginx配置优化:解决CSS样式加载问题
​在Web开发过程中,我们经常会遇到一些看似简单但令人头疼的问题。其中之一就是在Nginx服务器上部署网站时,CSS样式无法正确加载。这不仅影响网站的美观,还可能导致用户体验...
2024-12-11 编程技术
584