背景:在日常运维中经常会碰到需要从一个链接跳转到另一个链接的情况,此类需求分为两种情况,一种是浏览器url变,一种是浏览器url不变。

一、Url变,使用nginx rewirte模块

rewrite是实现URL重写的关键指令,根据regex(正则表达式)部分内容,重定向到replacement,结尾是flag标记。

flag标记分为下面4仲:

last #本条规则匹配完成后,继续向下匹配新的location URI规则

break #本条规则匹配完成即终止,不再匹配后面的任何规则

redirect #返回302临时重定向,浏览器地址会显示跳转后的URL地址

permanent #返回301永久重定向,浏览器地址栏会显示跳转后的URL地址

常使用301 来实现url地址跳转功能。

二、URL,地址不变,使用location 和rewrite模块均可

lcaotion 的proxy_pass模块
或者使用rewrite的last和break均可以上线此功能。

例子:
www.baidu.com/topic/sdp ===> www.weimob.com/website/topic/sdp

nginx配置
location = /topic/sdp {
rewrite /topic/sdp /website/topic/sdp last;
}

nginx rewrite location Nginx Nginx常见的错误及解决方法 配置Nginx支持WSS(WebSocket) 线上nginx的一次“no live upstreams while connecting to upstream ”分析 nginx 并发数问题思考:worker_connections,worker_processes与 max clients kubernetes 证书在线更新 NO.A.0001——nginx常见报错处理 Linux基础篇(1)小白如何学习Linux?计算机基础篇之五大组成部分及服务器信息 Promethus集群部署笔记:(一)安装并配置Grafana高可用集群 会装虚拟机,删库不用跑 centos7安装ceph维护提高篇 一次IDC中心机房交换机端口DOWN机故障解析过程 大数据平台建设 —— 监控预警组件之OpenFalcon + Grafana