如何将一个网站的子目录指向另一个网站的域?

问题描述 投票:0回答:1

我有一个网站,我们称之为 blog.netlify.app,它是使用 netlify (SolidJS) 部署的。

我在 example.com 上还有另一个网站,它是使用 GitHub Pages 部署的静态 HTML 页面。

现在,我想创建 example.com/blog,以便当用户访问 example.com/blog 时,他们将看到 blog.netlify.app 的内容,而无需在浏览器的 URL 地址栏中进行任何更改。

我怎样才能实现这个目标?我是否需要配置 cloudflare DNS 记录,或者使用代理或反向代理?

另外,我在 SolidJS 中使用绝对路径,因为我的 tsx 文件大约有 5、6 个目录深,所以编写

../../../../../../data/something.json
并不像编写
/src/data/something.json
那样方便,所以我担心这些资源在切换一下,但是 SolidJS typescript 会处理这些绝对文件路径,对吧?我有

        "paths": {
            "~/*": ["./src/*"],
            "/src/*": ["./src/*"]
        },

tsconfig.json
中配置,所以 netlify 应该可以正常工作,不是吗?

proxy dns github-pages netlify solid-js
1个回答
0
投票

要实现此目的,您可以设置一个 反向代理,将请求从

example.com/blog
转发到
blog.netlify.app
,同时保持浏览器地址栏中的 URL 不变。方法如下:

  1. 在 Cloudflare 中创建一个 Worker 并将其配置为将请求转发到您的
    blog.netlify.app
  2. 在 Cloudflare 中设置一条路线,将流量从
    example.com/blog
    引导至此 Worker。
  3. 确保在
    tsconfig.json
    中正确配置 SolidJS 中的绝对路径,以便在从 Netlify 提供服务时正确解析资产路径。

此设置可确保无缝代理,并且只要 Netlify 正确提供服务,SolidJS 的绝对路径就应该可以工作。我在我的网站上实现了类似的设置,您可以查看它以了解更多详细信息。 https://sonic-happy-hour.us/

© www.soinside.com 2019 - 2025. All rights reserved.