【问题标题】:Who is responsible for the subdomains in different scenarios?谁负责不同场景下的子域?
【发布时间】:2019-06-18 14:45:11
【问题描述】:

我想在我的 SPA 中使用 React 创建子域,但我不确定这是如何工作的。

当我在 Django 项目中搜索子域时,他们说 Nginx(将 nginx 读取为 HTTP 服务器,nginx 只是优先于 Apache 和其他)是首选。但是,我还没有打开nginx,不知道它是如何工作的。

还有一点:我想我会在 amazon S3 中提供我的 SPA,它如何只提供静态文件,子域会是什么样子?反应路由器可以做到这一点吗? obs:我还是不知道用哪一个:s3还是github pages。

我现在不需要知道子域在后端应用程序中是如何工作的,但你也可以解释一下,这会对我有所帮助。

以下是我想要的一些示例:

domain.com/blog/2019/some-article-title -> blog.domain.com/2019/some-article-title

domain.com/myusername -> myusername.domain.com

domain.com/myusername/settings -> myusername.domain.com/settings

【问题讨论】:

  • 我用 apache 做了一些你所说的事情,它叫做反向代理。你可以在这里找到指南并阅读它的工作原理httpd.apache.org/docs/2.4/howto/reverse_proxy.html,它实际上非常简单,你必须创建一个虚拟主机并将你的子域 url 设置为你的主域路径或任何你想要的反向代理。我认为在nginx中不会有太大区别

标签: reactjs nginx react-router subdomain


【解决方案1】:

在 apache 中,我们还可以使用 .htaccess 文件将 url 重定向到另一个,几乎就像你想要做的事情(但不完全是),我们不需要更改服务器设置,但我认为在 nginx 中你必须编辑一些你的配置文件。

正如我在评论中所说,您可以使用反向代理,也可以使用重定向(例如,对于您的 React 路由。我不是反应开发人员,但您可以在此处查看 Angular 的一些示例(只是为了说明问题) ):https://angular.io/guide/deployment#fallback-configuration-examples)

通过一点搜索,我发现这篇文章解释了什么是反向代理以及如何做到这一点,希望对您有所帮助: https://docs.nginx.com/nginx/admin-guide/web-server/reverse-proxy/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-10-04
    • 1970-01-01
    • 2017-01-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-09
    相关资源
    最近更新 更多