请问 nginx 配置伪静态后如何正确配置二级网址

2019-09-03 18:41:14 +08:00
 gogobody

我的 typecho 博客 xxx.com 配置了伪静态 由 xxx.com/index.php->xxx.com

    location / {
      
      #REWRITE-END
    
      if ( !-e $request_filename) {

          rewrite ^(.*)$ /index.php$1 last;
      }
    }

然后我想在二级目录配置静态 html,通过 xxx.com/love 访问

     location /love {
    	alias /www/wwwroot/my_love;
        index index.html;
    

如此配置之后一直无效,访问 xxx.com/love 跳转到 typecho 博客的 404 页面。求助各位大佬

2941 次点击
所在节点    程序员
22 条回复
Augi
2019-09-03 18:59:27 +08:00
不太了解你博客放哪儿了,不过不应该是 root 吗,为啥用 alias
gogobody
2019-09-03 19:02:57 +08:00
@Augi alias 是想部署静态网页的,博客就正常 typecho 安装的默认目录
enng
2019-09-03 19:05:30 +08:00
如果站点子目录也是 php 的话你漏了一些配置
gogobody
2019-09-03 19:07:56 +08:00
@enng 子站点就是静态的 html
enng
2019-09-03 19:19:36 +08:00
@gogobody 这样的话……
alias /www/wwwroot/my_love/; 加个斜杠看看?
gogobody
2019-09-03 19:23:01 +08:00
@enng 不行,我觉得问题很奇怪就是二级网址的 location 也转发到了 typecho 那里,所以一直显示 typecho 的 404 页面
Augi
2019-09-03 19:24:32 +08:00
@gogobody 多加个 / 试试
gogobody
2019-09-03 19:27:39 +08:00
@Augi 不行 = =
enng
2019-09-03 19:28:53 +08:00
@gogobody location 的优先级也没问题么……
gogobody
2019-09-03 19:31:17 +08:00
@enng 我试过交换顺序,还是不行呀 - -
glp664186796
2019-09-03 19:36:06 +08:00
xxx.com 是你的博客?
jamesliu96
2019-09-03 19:41:44 +08:00
猜想可能被正则 location 吃掉了或者其他的规则,可以试试 location ^~ /love {...}
gogobody
2019-09-03 19:48:24 +08:00
@glp664186796 是的,假设的是这个域名
gogobody
2019-09-03 19:53:05 +08:00
@jamesliu96 感谢,改了之后可以了,不过实在太奇怪了,我之前也试过这样,还试过~* /love,都没成功,现在突然就成功了,不知道是什么问题
gogobody
2019-09-03 19:57:56 +08:00
@jamesliu96 我尝试改回原来的 /love,发现也不会跳转到 typecho 的 404 了,正常跳转到 html,只是 css 样式链接不对。之前的问题无法复原了,太莫名其妙了 = =
jamesliu96
2019-09-03 20:01:15 +08:00
@gogobody 会不会是缓存的问题?通过你的描述分析感觉和后端和重写没有任何关系,应该全是 location 的锅
yytsjq
2019-09-03 20:12:50 +08:00
if is evil

试试用 try_files 重写?
gogobody
2019-09-03 23:38:56 +08:00
@jamesliu96 我也感觉像,不过我的博客没有开页面缓存啊
gogobody
2019-09-03 23:39:36 +08:00
@yytsjq 感谢,目前问题已经解决,原来的问题无法复原了😂
dimlau
2019-09-04 00:28:33 +08:00
关键是,URL 和实际目录结构相同时,不必设置 alias 啊……

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/597618

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX