nginx重定向至新大屏路径
Nginx:将根目录重定向至新大屏路径
你提供的这段代码是Nginx服务器的配置片段,核心作用是将访问网站根目录(/)的请求永久重定向到 /newlargescreen/ 路径。
代码逐行详细解释
# 精确匹配访问根目录(/)的请求
location =/ {
# 重写规则:将根路径请求永久重定向到/newlargescreen/
rewrite ^/$ /newlargescreen/ permanent;
}
-
location =/-
location是Nginx的核心指令,用于匹配客户端请求的URI(统一资源标识符)。 -
=表示精确匹配,只有当请求的URI严格等于/(比如访问http://你的域名/)时,才会触发这个location块里的规则。 -
如果没有
=,写成location /则是前缀匹配,会匹配所有以/开头的请求(比如/abc、/test等),这和你这段代码的精准匹配逻辑完全不同。
-
-
rewrite ^/$ /newlargescreen/ permanent;-
rewrite是Nginx的URL重写指令,语法为rewrite 匹配规则 目标地址 重定向类型;。 -
^/$是正则表达式:^表示字符串开头,$表示字符串结尾,整体匹配唯一的根路径/。 -
/newlargescreen/是重定向的目标路径,最终访问根目录的请求会跳转到http://你的域名/newlargescreen/。 -
permanent表示永久重定向(HTTP 301状态码),这种重定向会被浏览器缓存,也会被搜索引擎识别(有利于SEO);如果需要临时重定向,可以用redirect(HTTP 302状态码)。
-
实际效果示例
-
当用户访问
http://yourdomain.com/时,浏览器会自动跳转到http://yourdomain.com/newlargescreen/。 -
地址栏的URL会直接显示重定向后的路径,且因为是301重定向,后续再次访问根目录时,浏览器会直接走缓存跳转到目标路径。
注意事项
-
确保
/newlargescreen/路径在Nginx中已有对应的配置(比如对应的root、index或proxy_pass),否则会出现404错误。 -
精确匹配
location =/的优先级极高,不会被其他前缀匹配的location覆盖,保证根路径重定向的唯一性。
总结
-
这段配置的核心是精准匹配网站根目录请求,并通过301永久重定向到指定子路径。
-
=符号实现了URI的精确匹配,避免规则被其他路径的请求触发。 -
permanent代表301重定向,适合需要长期生效、希望搜索引擎更新索引的场景。

浙公网安备 33010602011771号