You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Nginx配置:仅访问特定目录/_时重定向至网站根目录的方法

Nginx 特定目录根访问重定向解决方案

要实现仅当访问 https://example.com/_ 或 https://example.com/_/ 时重定向到根目录,同时允许访问该目录下的资源/子目录,你可以用以下两种简洁的配置方式:

方式一:精确匹配 Location 规则

这种方式优先级最高,配置清晰直观:

# 匹配精确的 /_ 请求
location = /_ {
    return 302 https://example.com/;
}

# 匹配精确的 /_/ 请求
location = /_/ {
    return 302 https://example.com/;
}

方式二:单条 Rewrite 规则

如果想简化配置,直接在 server 块中添加这条 rewrite 规则即可:

rewrite ^/_/?$ https://example.com/ redirect;
  • ^/_/?$ 是正则表达式:^ 匹配路径开头,/_ 匹配目标目录前缀,/? 匹配可选的末尾斜杠,$ 匹配路径结尾,确保只有精确的 /_ 或 /_/ 会被匹配。
  • redirect 对应临时重定向(HTTP 302),如果需要永久重定向可以换成 permanent(HTTP 301)。

为什么你之前的配置不生效?

你之前写的正则 ^/_(?/)(!.*)$ 存在语法错误:

  • (?/) 不是合法的正则语法,正确的可选斜杠写法是 /?
  • (!.*) 写法错误,要确保路径后无其他内容,应该用结尾匹配符 $

配置完成后,记得重启 Nginx 服务使配置生效:

sudo systemctl restart nginx

内容的提问来源于stack exchange,提问作者StackReject

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.21 22:40:56