我想在gh-pages上为我的应用中的所有(子)网址提供相同的index.html页面
可能吗?
现在当我去repo / inner / path我得到404
所以我想"强迫" github页面在所有路由上提供相同的根index.html
答案 0 :(得分:1)
如果您可以列出应用程序的所有可能URL,则可以在github页面上使用jekyll redirect from。
可悲的是,很难列出包含特定ID或名称的所有网址,例如/path/customer/id
,其中id可以是任何整数。
您必须找到其他托管服务,例如netlify或cloudcanon,以便您配置真正的重定向。
答案 1 :(得分:1)
结帐Single Page Apps for GitHub Pages。它使用带有重定向脚本的自定义404.html
文件始终提供index.html
,同时保留最初请求的路径。
答案 2 :(得分:0)
这也许适合您,但似乎您正在设置SPA的路由。正是由于这个原因,许多基于客户端的路由器提供基于哈希的路由,因此您不必配置托管服务提供商即可将URL重定向为返回索引。
解决方案的前景似乎是:
使用基于哈希的路由
USE: https://example.com/index.html#inner/path
NOT: https://example.com/inner/path
<HashRouter>
HashLocationStrategy
{mode: 'hash'}
将custom 404 page用于gh页以redirect all missed traffic back to index.html
现在看来github似乎不支持此功能,因此您要么需要避免对服务器的深层链接请求,要么需要更改为允许您这样做的托管服务提供商。
进一步阅读: