Nginx自定义404页面的三种方法

网络 2024-06-04 13:52:58编程技术
53

在网站开发和运维中,确保用户获得良好的浏览体验至关重要。当用户访问一个不存在的页面时,服务器默认的404错误页面通常不够友好,而且缺乏个性化的信息。为了让您的网站更加专业,并提供更好的用户体验,自定义404页面变得尤为重要。本文将介绍几种使用Nginx配置自定义404页面的方法,帮助您轻松创建具有吸引力且包含有用信息的错误页面,从而改善网站的整体用户体验。

404页面.jpg

第一种:Nginx自带的错误页面

Nginx访问一个静态的html 页面,当这个页面没有的时候,Nginx抛出404,那么如何返回给客户端404呢?

看下面的配置,这种情况下不需要修改任何参数,就能实现这个功能。

server {
listen  80;
server_name www.test.com;
root /var/www/test;
index index.html index.htm;
location / {
}
# 定义错误页面码,如果出现相应的错误页面码,转发到那里。
error_page 404 403 500 502 503 504 /404.html;
# 承接上面的location。
location = /404.html {
# 放错误页面的目录路径。
root /usr/share/nginx/html;
}
}

第二种:反向代理定义错误页面

如果后台Tomcat处理报错抛出404,想把这个状态叫Nginx反馈给客户端或者重定向到某个连接,配置如下:

upstream www {
server 192.168.1.201:7777 weight=20 max_fails=2 fail_timeout=30s;
ip_hash;
}
server {
listen  80;
server_name www.test.com;
root /var/www/test;
index index.html index.htm;
location / {
if ($request_uri ~* ‘^/$') {
rewrite .* http://www.test.com/index.html redirect;
}
# 关键参数:这个变量开启后,我们才能自定义错误页面,当后端返回404,nginx拦截错误定义错误页面
proxy_intercept_errors on;
proxy_pass  http://www;
proxy_set_header HOST $host;
proxy_set_header X-Real-IP  $remote_addr;
proxy_set_header X-Forwarded-FOR $proxy_add_x_forwarded_for;
}
error_page 404 /404.html;
location = /404.html {
root /usr/share/nginx/html;
}
}

第三种:Nginx解析php代码实现自定义错误页面

如果后端是php解析的,需要加一个变量

在http段中加一个变量 fastcgi_intercept_errors on 就可以了。

指定一个错误页面:

error_page 404 /404.html;
location = /404.html {
root /usr/share/nginx/html;
}

指定一个url地址:

error_page 404  /404.html;

error_page 404 = http://www.test.com/error.html;

总结

总之,通过本文的介绍,我们了解了如何使用Nginx配置自定义404页面的几种方法。自定义404页面不仅能提升网站的专业形象,还能提供更好的用户体验。通过这些方法,我们可以创建既美观又实用的错误页面,从而改善网站的整体用户体验。希望本文的指导能够帮助您轻松地实现自定义404页面的目标。

Nginx 404 404页面
THE END
战地网
频繁记录吧,生活的本意是开心

相关推荐

连接已重置怎么修复?Nginx访问网站出现连接已重置的解决方法
Nginx作为一款高性能的Web服务器和反向代理服务器,被广泛应用于各种规模的项目中。然而,在使用Nginx的过程中,有时会遇到“连接已重置”(Connection Reset)的问题,这会导...
2024-07-03 电脑知识
89

Nginx从哪个版本开始支持HTTP/3协议
Nginx从1.25版本开始正式支持QUIC和HTTP/3协议。特别是从1.25.0版本开始,Linux环境下的Nginx二进制包就已经内建了QUIC和HTTP/3的支持。然而这些新支持的协议目前仍处于实验性...
2024-06-27 电脑知识
60

Nginx安装配置详解
Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。本文详细讲解了Nginx安装与配置的方法,对大家的学习或者工作具有一定的参考学习...
2024-06-13 电脑知识
57

Nginx和Apache伪静态规则怎么写?两者有什么区别?
Nginx和Apache都是广泛使用的HTTP服务器软件,它们都可以用于托管网站和服务。虽然它们都能处理伪静态规则,但在配置和处理方式上有一些不同。在这篇文章中,ZHANID将探讨如何...
2024-06-05 站长之家
74

Gzip压缩是什么?Nginx开启Gzip压缩方法详解
Gzip是一种广泛使用的数据压缩格式,它可以有效减少网络传输的数据量,从而加快网页加载速度。本文将详细介绍Nginx开启Gzip压缩的方法,以及如何配置Gzip压缩来优化网站性能。...
2024-06-04 站长之家
67

Apache、IIS、Nginx服务器开启GZIP压缩功能的方法详解
GZIP是若干文件压缩程序的简称,通常指GNU计划的实现,此处的GZIP代表的就是GUN ZIP,这也是HTTP1.1协议定义的两种压缩方法中最常用的一种压缩方法,客户端浏览器大都支持这种...
2024-06-04 站长之家
60