This issue was moved to a discussion.
You can continue the conversation there. Go to discussion →
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Bug] 在特定配置下重定向失效 #3877
Comments
I believe the redirectTo issue is fixed, you are reporting multiple issues at same time and that confused me, can you open new pr with what you do, what's expected and what happening about the rest? |
更新:如果你使用了autoLocale,而你的项目中存在不属于任何一个语言的页面的时候,报错是预期的,因为插件根本不清楚要做什么。 |
简单来说这是 但是在 那么 #3878 应该就是预期不工作的。(那么为啥 我尝试一下做个这个redirectFrom的问题的最小重现 |
我还是没太看懂你表达了什么,你关闭的那个议题,你给出的结构和你底下说的对不上。 输出构建结果的时候,插件只会根据已有的界面来生成能够自动重定向的界面,也就是说如果你想要让 /a 能实现重定向,你需要在至少一个语言下有 a.md,否则压根就不会有这个界面,应该会默认走到服务器404的逻辑。 |
redirectForm 的底层工作原理是插件会便利所有的数据把它们集中起来并推断出原始的重定向界面,并把那些重定向界面创建出来。 autoLocate也是一样的,插件会收集所有语言中存在过的所有路径,并在根目录自动生成他们同时提供自动从定向到一个最贴近用户语言的功能。 Redirect to的工作逻辑是直接在当前界面写一个script的标签,这个script的标签会进行跳转。 |
Reirectto不工作的原因是因为我忘了去掉pathname 最开始的斜杠了,这个问题很简单,你汇报的也很清晰,但是其他的部分我都没有听懂原因在哪里。 实际上因为插件写的比较久了,我现在也不是很确定,如果说你强行要在启用了自动语言重定向的功能时,添加一些不属于任何语言的界面,会发生什么事情,我认为那些页面会保留,也不会被重定向,也不应该涉及到报错。如果你添加了这些界面之后,整个自动语言程序性功能都不工作了,那可能应该算是一个bug,你可以给一个最小复现,或者说你在action里给出一个明确的文件结构,然后给出一系列步骤,我自己去复现。 |
制作了一个最小重现 需要实现的目标是访问 有 按我的理解 |
针对这个我做了另一个最小复现 在这个复现里 需要注意的是 pnpm docs:dev 提供的页面, 但是 pnpm docs:build --dest Test
pnpm serve 这样访问 |
输出结果我测试是没有问题的: 小写 base: 大写 base: Vite 开发服务器配合 chrome 我是测出了一些问题的,在原选项卡单纯的修改大小写似乎实际访问的地址是不变的。 每次开一个新标签卡访问,并不使用任何自动补全是完全正常的。 代码实现里插件选项的 config 和 frontmatter 的 redirectFrom 会合并到一个 redirectMap 处理,也就是上方的 log,所以 config 应该也正常。 |
新建一个窗口,把 |
关于使用主题,根目录不能重定向的问题,很有可能是 auto-catalog 为你自动生成了页面。 建议配置 |
测了一下似乎有这个问题,但我没验证上面的配置能不能修(99% 大概行)。插件的部分冲突需要你自行解决,因为主页不存在时自动生成一个目录页也是合理的。 |
This issue was moved to a discussion.
You can continue the conversation there. Go to discussion →
Checklist
Package name
vuepress-plugin-redirect
Which operating system are you using?
Describe the bug
如后文所述的项目结构,在使用
vuepress dev docs
可以正常自动语言重定向,发到github pages就不能重定向了在本地
vuepress build docs
构建之后,用http-server -p 8080 -c-1 --cors .
建立服务也无法重定向项目结构如下
config.ts
我认为和这两个
不在任何语言下内容的有关系,移除掉就正常了
另外,我尝试将
redirect_bug/A.md
重定向到redirect_bug/zh/A.md
我尝试写了
和
都无法重定向
于是我尝试建立了一个
redirect_bug/A.md
于是产生了上面的问题如果这个
redirect_bug/A.md
里面写会重定向到
HOST_NAME/Test//zh/A.html
然后进404.html如果写成
那么如果使用在
redirect_bug/other/A.html
,会重定向到HOST_NAME/Test/zh/A.htmlother/zh/A.html
然后得到404.html这一部分(横线分隔的)现象在github pages,
vuepress dev docs
和本地建立服务都会出现Additional context
No response
The text was updated successfully, but these errors were encountered: