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

Nginx多站点配置问题:URL大小写引发404错误求助

解决Nginx子站点URL大小写敏感导致的404问题

问题根源

Nginx的普通location匹配默认区分大小写,你当前配置中仅对全小写的/bollettini/路径做了规则处理,当URL包含大写字符(如/Bollettini)时,无法匹配到对应的location块,会 fallback 到根路径的location /规则,而根路径的try_files找不到对应资源,最终返回404错误。另外原配置中第一个重定向规则的$scheme&:$host存在语法错误,正确写法应为$scheme://$host。

修复配置

替换现有配置为以下内容,实现URL大小写不敏感处理并统一规范到小写URL:

# 匹配所有大小写变体的/bollettini(含结尾带/或不带),重定向到标准小写URL
location ~* ^/bollettini/?$ {
    return 301 $scheme://$host/bollettini;
}

# 匹配/bollettini/下所有子路径(不区分大小写),按子站点规则处理请求
location ~* ^/bollettini/(.*)$ {
    try_files $uri $uri/ /bollettini/index.php?$args;
}

location / {
    try_files $uri $uri/ /index.php?$args;
    #try_files $uri $uri/ /index.php?q=$request_uri;
}

配置说明

  • location ~* 表示启用不区分大小写的正则匹配,能覆盖所有大小写组合的bollettini路径;
  • 第一个规则负责将所有大小写变体的根路径(如/Bollettini/、/BOllettini)重定向到标准的/bollettini,既解决访问问题,也统一URL规范利于SEO;
  • 第二个规则处理bollettini下的所有子资源请求,确保子路径的大小写变体也能正常访问;
  • 保留原根路径规则,不影响主站点的正常运行。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.30 00:52:22