Nginx实现地址重定向
Nginx实现地址重定向
-
目的
通过配置,实现访问a.html自动跳转到b.html
-
方案
地址重定向可以在Nginx使用rewrite参数实现。
-
配置步骤
-
步骤一:修改配置文件,在server块内添加参数
server { listen 80; server_name localhost; rewrite a.html b.html; //在访问的时候,访问路径不会变化。 rewrite a.html b.html redirect; //访问路径也会变成重定向的路径(临时重定向)。 rewrite a.html b.html permanent;//同上,但是属于永久重定向。 #charset koi8-r; #access_log logs/host.access.log main; location / { root html; index index.html index.htm; } -
步骤二:重载配置文件,无报错表示配置生效。
-
redirect和permanent的区别
-
在客户访问时看不出区别,主要区别在状态码。
-
在/usr/local/nginx/log/accssee.log文件中可以看到访问日志,包括状态码。
192.168.131.2 - - [07/Jul/2025:11:17:41 -0400] "GET /A.html HTTP/1.1" 302 145 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36 Edg/138.0.0.0"//状态码302表示为redirect重定向。 192.168.131.2 - - [07/Jul/2025:11:13:43 -0400] "GET /a.html HTTP/1.1" 301 169 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36 Edg/138.0.0.0"//状态码301表示为permanent重定向
-
-
-
案例
-
旧网页迁移到新网页,并且保留访问目录。
server { listen 80; server_name localhost; rewrite ^/(.*)$ http://www.xxx.com/$1; //使用作正则表达式,复制原网站的目录重定向到新地址的目录下。 location / { root html; index index.html index.htm; }
-
浙公网安备 33010602011771号