Nginx rewrite

Nginx rewrite

URL组成 http://www.wingsredevsecops.top/download?name=docker.pdf

这个URL的格式可以分为以下⼏个部分:

  1. 协议部分:指定了访问资源的协议,这个URL使⽤了默认的协议HTTP、HTTPS。

  2. 域名部分:指定服务器的域名和顶级域名,这个URL的域名部分是www.wingsredevsecops.top。

  3. 路径部分:指定了服务器上要访问的资源的路径,这个URL的路径部分是/download。

  4. 查询部分:包含了向服务器请求资源时所附带的数据,以键值对的形式进⾏传递,这个URL的查询部分是

name=docker.pdf。

因此,这个URL的格式可以表示为:

议部分使⽤了默认的HTTP协议,域名部分为www.wingsredevsecops.top,路径部分为/download,查询部分为

name=docker.pdf。

1.Rewrite****基本概述

rewrite 主要实现 url 地址重写, 以及重定向.

Rewrite****使⽤场景

1.URL访问跳转: ⽀持开发设计, ⻚⾯跳转, 兼容性⽀持, 展示效果 www.wingsredevsecops.top/a.html 实际

www.wingsredevsecops.top/b.html

2.SEO优化: 依赖于url路径,以便⽀持搜索引擎录⼊

3.维护: 后台维护, 流量转发等

4.安全: 伪静态,真实动态⻚⾯进⾏伪装

2.Rewrite****配置语法


server {

 listen 80;

 server_name rewrite.zgw.top;

 root /soft/code;

 location ~ ^/break{

 rewrite ^/break /testc/ break;

 }

 location ~ ^/last{

 rewrite ^/last /test/ last;

 }

 location /test/{

 default_type application/json;

 return 200 '{"status":"success"}';

 }

}

image-20240824160058693

3.Rewrite标记Flag

server {

 listen 80;

 server_name rewrite.zgw.top;

 root /soft/code;

 location ~ ^/wing {

 rewrite ^/wing https://yuque.com/egrep redirect;

 \#rewrite ^/wing https://yuque.com/egrep permanent;

 }

 }

image-20240824165034148


4.Rewrite使⽤场景
server {

 listen 80;

 server_name rewrite.zgw.top;

 root /soft/code/;

 location / {

 rewrite ^/course-(\d+)-(\d+)-(\d+)\.html /course/$1/$2/course_$3.html break;

}

 location ~ ^/wing {

 \# rewrite ^/wing https://yuque.com/egrep redirect;

 rewrite ^/wing https://yuque.com/egrep permanent;

 }

 }

image-20240824172759009

posted @ 2024-08-24 20:13  hhhaaa12138  阅读(11)  评论(0编辑  收藏  举报