nginx最新配置(配置nginx 重定向到系统维护页面)
nginx最新配置
配置nginx 重定向到系统维护页面上周末兄弟项目准备扩展服务器以便提供更好的服务,兄弟项目有一些功能是实时提供到我这边的,需要我这边暂时把对应系统功能屏蔽,因为使用nginx,所以可以直接配置nginx重定向到固定系统维护页面。
nginx重定向其实很简单,用return或rewrite关键字均可,因为重定向后直接跳转到静态页面,不需要后续操作和记录,所以直接301永久重定向。
其中重定向既可以在server中配置,也可以在具体的location中配置,下面分别简单介绍。
在server中配置:
http { server{ listen 80; server_name A.com; # 以下return 或 rewrite 选择其中一个就行。其中upgrade.html 是自己写的提示页面 return 301 http://B.com/upgrade.html; # rewrite ^/(.*)$ http://B.com/upgrade.html permanent; location / { # 此处省略后面配置内容 } } }
或者在location中配置:
http { server{ listen 80; server_name A.com; location / { rewrite ^/(.*)$ http://B.com/upgrade.html permanent; # 此处省略后面配置内容 } } }
从以上实例看出,return用301参数重定向,rewrite用permanent(当然还可以用break,last,区别的话自己查资料)。
不知道你们有没有发现,以上两个例子中,都是用 A.com去重定向到 B.com ,我试过,用A.com直接重定向到A.com/upgrade.html,会报错重复次数太多,也就是进入死循环。在同时管理多个域名是可以配置用A重定向B,但是如果只有一个域名A那怎么弄呢?
这时候就用到if条件判断了,此处我们以在server中配置为例说明:
http { server{ listen 80; server_name A.com; # 注意 if 后面必须有一个空格!!! if ($request_uri !~ "/upgrade.html$") { return 301 http://A.com/upgrade.html; } location / { # 此处省略后面配置内容 } } }
以上实例说明,当访问路径不包含 /upgrade.html时就重定向到upgrade.html,此时能够重定向,不会再有重复次数太多的提示,但有另一个问题,就是upgrade.html中的图片无法显示了,暂时没时间去研究如何避免图片被重定向了,后面有时间再补充。
测试if条件的时候,遇到一个特别坑的事,就是添加if后重启nginx报错:
Job for nginx.service failed because the control process exited with error code. See "systemctl status nginx.service" and "journalctl -xe" for details.
输入systemctl status nginx.service可查看错误信息,其中nginx: [emerg] unknown directive "if($request_uri"错误查找到答案,原来是if后面必须要有一个空格!!!!,太坑了,网上那些介绍nginxif的文章都没有提到这么重要的信息。。。
感谢资料:
if后必须有空格:https://blog.csdn.net/palet/article/details/103394236
nginx中return和rewrite:https://blog.csdn.net/u010982507/article/details/104025717
知识点补充
配置nginx输入任何地址都跳转至维护页面
笔记一下:配置nginx输入任何地址都跳转至维护页面
server { listen 80; root /xxx/xxx/src; index index.html index.htm; server_name test.xxx.com; set $flag 0; if ($request_uri !~ "(/static/.*)$"){ set $flag "${flag}1"; } if ($request_uri !~ "/502.html$" ){ set $flag "${flag}2"; } if ($flag = "012") { rewrite ^(.*) http://test.xxx.com/502.html permanent; } location /{ ...
以上就是nginx 重定向到系统维护页面的详细内容,更多关于nginx重定向维护页面的资料请关注开心学习网其它相关文章!
- nginx怎么用ssl证书(制作能在nginx和IIS中使用的ssl证书)
- nginx和apache(为什么 Nginx 比 Apache 更牛逼)
- nginx+ssl配置详解(nginx配置ssl实现https的方法示例)
- 如何采集nginx的日志(Filebeat 采集 Nginx 日志的方法)
- nginx优化分几种(Nginx优化服务之网页压缩的实现方法)
- nginx和apache服务器配置(Apache、Nginx 服务配置服务器端包含SSI)
- nginx故障处理(详解Nginx启动失败的几种错误处理)
- nginx怎么支持http转https(Nginx域名转发https访问的实现)
- nginx如何代理项目(Nginx代理同域名前后端分离项目的完整步骤)
- nginx和lua哪个好(nginx+lua单机上万并发的实现)
- nginx前后端跨域(Nginx解决前端访问资源跨域问题的方法详解)
- nginx代理docker容器(Docker Nginx容器制作部署实现方法)
- nginx反向代理端口号(nginx 代理80端口转443端口的实现)
- nginx反向代理spring boot(Nginx+SpringBoot实现负载均衡的示例)
- nginx如何配置php项目(Nginx服务器究竟是怎么执行PHP项目)
- 宝塔试用网站再安装nginx不起作用(宝塔面板Nginx防恶意解析图文教程)
- 收藏 春节假期,这些景区巨划算(收藏春节假期这些景区巨划算)
- 景区游玩,这些安全知识要牢记(这些安全知识要牢记)
- 各地出招烘 热 旅游(各地出招烘热旅游)
- 2021款起亚霸锐到店了 更换车标,竞争宝马X5有戏吗(2021款起亚霸锐到店了)
- 新款起亚霸锐实拍,比普拉多气派,配3.0T V6,引入国内或许能大卖(新款起亚霸锐实拍)
- ()
热门推荐
- iis7安全设置(IIS7 IIS8 http自动跳转到HTTPS80端口跳转443端口)
- laravel测试重连数据库(Laravel关系模型指定条件查询方法)
- pythonmatplotlib画图流程(python3使用matplotlib绘制条形图)
- cdn上传加速(云服务器搭建网站需要用CDN加速吗?)
- 阿里云服务器ecs入口(阿里云服务器ECS共享型和计算型有什么区别?)
- dedecms调用logo标签(DedeCMS 5.7 tag标签长度限制的修改方法)
- thinkphp5.1修改(ThinkPHP 5.1 跨域配置方法)
- 腾讯云可以在阿里云服务吗(卸载阿里云、腾讯云服务器监控系统图文教程)
- vue的弹框怎么用(vue自定义弹框效果确认框、提示框)
- react怎么使用父组件(关于antd tree和父子组件之间的传值问题react 总结)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9