服务器之家:专注于VPS、云服务器配置技术及软件下载分享
分类导航

云服务器|WEB服务器|FTP服务器|邮件服务器|虚拟主机|服务器安全|DNS服务器|服务器知识|Nginx|IIS|Tomcat|

服务器之家 - 服务器技术 - Nginx - Nginx隐藏式跳转(浏览器URL跳转后保持不变)

Nginx隐藏式跳转(浏览器URL跳转后保持不变)

2022-08-04 09:26散尽浮华 Nginx

这篇文章主要介绍了Nginx隐藏式跳转(浏览器URL跳转后保持不变),需要的朋友可以参考下

Nginx的隐藏式跳转可以实现将请求跳转到另一个网站的页面,并且浏览器中URL保持不变。Nginx配置中需要使用rewrite规则。下面提供两个示例来说明这种跳转需求的配置:

一、Nginx隐藏式跳转配置示例1

将请求路径http://tuohang.net/data/test跳转到http://www.tuohang.net/data/test/test.html页面。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
server {
    listen       443;
    server_name  tuohang.net;
    access_log  /data/nginx/logs/tuohang.net-access.log main;
    error_log  /data/nginx/logs/tuohang.net-error.log;
  
    ssl on;
    ssl_certificate /data/nginx/ssl/tuohang.net.crt;
    ssl_certificate_key /data/nginx/ssl/tuohang.net.key;
    ssl_session_timeout 5m;
  
    location = /data/test {
        rewrite /data/test /data/test/test.html break;
        proxy_pass http://www.tuohang.net;
    }
} 

二、Nginx隐藏式跳转配置示例2

将访问172.16.60.16:8082/m2/order/secretRecording的请求跳转到172.16.60.28:8089/order/secretRecording

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
server {
       listen 8082;
       server_name 172.16.60.16;
       index   index.html index.php index.htm;
        
       location ~* ^/m2/order/secretRecording {
                proxy_next_upstream error timeout http_503 http_504 http_502;
                proxy_connect_timeout 500s;
                proxy_read_timeout 500s;
                proxy_send_timeout 500s;
                proxy_set_header Host $http_host;
                proxy_set_header X-Real-IP $remote_addr;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                rewrite  ^(.*)$  /order/secretRecording break;  #先改写URI地址
                proxy_pass http://172.16.60.28:8089;  #跳转
       }
}

更多关于Nginx隐藏式跳转的文章请查看下面的相关链接

原文链接:https://www.cnblogs.com/kevingrace/p/14000291.html

延伸 · 阅读

精彩推荐