Open liangyoufeng opened 1 month ago
模板使用的跳转就是相对路径的 href,你在 src/consts.ts
中看到的href,比如/blog
,实际上就通过src/components/HeaderMenu.astro
中
<a
tabindex="0"
class="menu-item text-xl font-bold p-4"
id={`header-${item.id}`}
title={item.id}
href={item.href}
target={item.target || "_self"}
aria-label={item.text}
>
{item.text}
</a>
进行跳转。按理说默认是支持端口的,比如打开pnpm dev,从 http://localhost:4321
跳转到 http://localhost:4321/blog
是正常的。我猜想可能是你的nginx配置问题导致端口丢失。你把模板代理在50001,我猜想你的80或443端口可能有其它东西。你的配置里是否包含了 proxy_set_header Host $host:$server_port;
来传递端口呢?
另外,条件允许的话还是代理在子域名的80端口比较常见。。虽然可以在模板里显式的href中显式的指定链接和端口,但是我不清楚这样做的必要性。
配置已经包含proxy_set_header Host $host:$server_port;了,另外问了一下开发群大佬,他们说开发不应该使用决定路径,建议是相对于路径,写死了的话,没法进行传递。
Title: 🛠️ Bug Report: [Brief Description of the Issue] 通过nginx代理后,默认端口不是80访问其他栏目页面会出现重置连接 Date: [Date] 20240927 Affected Version: [Version Number] 2.5.7 Description: A detailed description of the bug or issue. Include any error messages, unexpected behavior, or deviations from the expected functionality. 通过nginx代理后,默认端口不是80访问其他栏目页面会出现重置连接。 我尝试过更改nginx的配置,但是还是失败了,手动加上端口是可以访问的,我记得在hexo里配置全局文件里有设置端口再编译出来就可以用了,不知道是不是代码上写死了80端口url不?