如何让Nginx为自建基础站点提供多HTML页面访问服务?
解决Nginx访问/info返回404的问题
修正域名匹配问题:
你的配置里server_name仅设置为jacobblog.com,但实际访问的是www.jacobblog.com,Nginx会优先匹配最贴合的server块,未匹配时会使用默认配置,导致你的rewrite规则根本没生效。将server_name修改为:server_name jacobblog.com www.jacobblog.com;优化/info的访问规则(两种可选方案):
方案1:针对单个路径配置
把原来的location块换成更简洁的try_files写法,避免rewrite的额外开销:location = /info { try_files /info.html =404; }方案2:通用规则(适合后续新增更多无后缀路径)
如果以后还需要类似/xxx访问/xxx.html的需求,可用正则匹配的通用规则替换单个location:location ~ ^/([^/.]+)$ { try_files /$1.html =404; }验证配置并重启Nginx:
执行命令测试配置合法性:sudo nginx -t输出
test is successful后,重启Nginx使配置生效:sudo systemctl restart nginx
内容的提问来源于stack exchange,提问作者pretzel
相关产品推荐
相关产品推荐

