• 请不要在回答技术问题时复制粘贴 AI 生成的内容
darknoll
V2EX  ›  程序员

前后端分离的网站,能否共用同一个域名

  •  
  •   darknoll · Apr 1, 2020 · 8725 views
    This topic created in 2412 days ago, the information mentioned may be changed or developed.

    比如原先前端是 www.x.com ,后端是 api.x.com 现在后端想改成 www.x.com/api 这样的形式 前端部署在 Windows 的 IIS,后端直接用 go 生成的 exe 直接运行,前后端都需要 https

    26 replies  •  2020-04-01 21:05:52 +08:00
    wszgrcy
    wszgrcy
    Apr 1, 2020 via Android❤️16
    1
    小朋友你是否有很多问号?
    LG3xFA6kpn88HxEW
    LG3xFA6kpn88HxEW
    Apr 1, 2020
    2
    用服务器转发一下就行了,就是所谓的反向代理,我也不知道为什么要翻译成反向代理
    licoycn
    licoycn
    Apr 1, 2020
    3
    nginx
    sundev
    sundev
    Apr 1, 2020
    4
    IIS 安装 ARR 使用反向代理。
    hanxiV2EX
    hanxiV2EX
    Apr 1, 2020 via Android
    5
    搜 caddy 反向代理

    / {
    proxy / http://www.x.com
    }

    /api {
    proxy / http://api.x.com
    }
    ETO
    ETO
    Apr 1, 2020
    6
    可以的,设置一下 nginx 的转发规则,或者后端程序细节加个端口号也是可以的吧。
    metinfo
    metinfo
    Apr 1, 2020
    7
    看看我们的 DEMO 站吧,看完就明白了,前端 demo.metinfo.cn 后端 demo.metinfo.cn/admin/
    还是不明白就下载开源安装包自己安装试试吧
    lhx2008
    lhx2008
    Apr 1, 2020 via Android
    8
    IiS 配一下转发规则就可以了,再装 nginx 干啥
    ellermister
    ellermister
    Apr 1, 2020 via Android
    9
    如果你两个站都是根路径,后端段配置如下:
    location ^~ /api/ { proxy_pass https://example.com:4433/; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; }

    ^为了匹配前缀,增加优先级。
    4433 后的 /是为了将外层网络的二级目录转发到内层网络的一级目录,当然也可以 2,3 级。
    https://eller.tech/post/41
    x66128
    x66128
    Apr 1, 2020
    10
    我想说!你不是可以开端口吗?
    Cbdy
    Cbdy
    Apr 1, 2020
    11
    能
    ryncv
    ryncv
    Apr 1, 2020
    12
    @l1nyanm1ng 反向可以理解为跟正向代理相对应..
    正向: (客户端-代理服务器) - 真实服务器
    反向: 客户端 - (代理服务器-真实服务器)
    shawshi
    shawshi
    Apr 1, 2020
    13
    可以 加一层 nginx
    wangyzj
    wangyzj
    Apr 1, 2020
    14
    俺就是这么搞得
    littlewing
    littlewing
    Apr 1, 2020
    15
    nginx 配置分流规则,发到后端不同的服务器上
    0x666666
    0x666666
    Apr 1, 2020
    16
    我觉得还是用二三级域名来区分好一点
    xmge
    xmge
    Apr 1, 2020
    17
    nginx /api 就 ok 了。
    labulaka521
    labulaka521
    Apr 1, 2020
    18
    可以
    momocraft
    momocraft
    Apr 1, 2020
    19
    技術上可以, 實際上這樣做麻煩更多 (比如 cdn)
    loading
    loading
    Apr 1, 2020 via Android
    20
    你需要知道的东西叫:

    跨域

    不难的。
    myqoo
    myqoo
    Apr 1, 2020
    21
    可以,有个浏览器黑科技可以解决
    itechify
    itechify
    Apr 1, 2020 via Android
    22
    反向代理设置一下
    MorningBOBO
    MorningBOBO
    Apr 1, 2020
    23
    不建议这样
    fuis
    fuis
    Apr 1, 2020
    24
    反代一下就行了
    Mithril
    Mithril
    Apr 1, 2020
    25
    IIS 直接配置一个转发规则就可以了
    topman
    topman
    Apr 1, 2020
    26
    你都用 go 了,写一个反向代理就是不到 100 行代码的事
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1465 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 69ms · UTC 10:15 · PVG 18:15 · LAX 02:15 · JFK 05:15
    ♥ Do have faith in what you're doing.