midway icon indicating copy to clipboard operation
midway copied to clipboard

[QUESTION]f.yml如何配置一个域名关联多个服务/只覆盖特定path而是全部

Open xmsz opened this issue 4 years ago • 3 comments

我的需求是

  • /* => 云函数A
  • /api/* => 云函数B

下面是我云函数A的配置表

service: we-mp-admin-web

provider:
  name: aliyun ## 发布的云平台,aliyun,tencent 等

deployType: static

custom:
  customDomain:
    domainName: cps-admin.pmlife.work

package:
  include:
    - build ## 需要拷贝的目录
  exclude:
    - package-lock.json ## 忽略 package-lock.json 文件
    - yarn.lock


只能设置domainName,所以最后只设置了

  • /* => 云函数A

我的需求

  • 可以设置特定的path,且不影响到原有设置
  • 其他方式解决需求

目前临时的做法

方法一

  • 每次deploy后,去阿里云函数后台手动重新设置自定义域名,很繁琐

方法二

  • deploy填的是假域名,主要是为了避免每次生成无用的临时域名
  • 然后手动在后台设置真域名的服务指向
  • 相对简单,但是后续维护成本高

xmsz avatar May 29 '21 04:05 xmsz

简单回答:不能。

我目前的做法是:

  1. 在 f.yml 的 customDomain 设置一个 fake.example.com,用来避免生成临时域名,这个绑定的 path 会被覆盖来覆盖去,不要管它
  2. 在阿里云控制带的域名管理那里设置真的 real.example.com,手动设置 path 匹配和绑定,由于接口一般不会改,所以手工设置一次就好了

效果就是每次 npm run deploy 会把最新的代码部署,并把 fake.example.com 乱指,不要管它,real.example.com 还是对的,因为没人会去动它

hbrls avatar Oct 11 '21 06:10 hbrls

customDomain每次都会覆盖阿里云上手动配置的域名和path,只留下最后一个path,这个问题到现在还没修复

简单回答:不能。

我目前的做法是:

  1. 在 f.yml 的 customDomain 设置一个 fake.example.com,用来避免生成临时域名,这个绑定的 path 会被覆盖来覆盖去,不要管它
  2. 在阿里云控制带的域名管理那里设置真的 real.example.com,手动设置 path 匹配和绑定,由于接口一般不会改,所以手工设置一次就好了

效果就是每次 npm run deploy 会把最新的代码部署,并把 fake.example.com 乱指,不要管它,real.example.com 还是对的,因为没人会去动它

eonhou avatar Aug 29 '22 05:08 eonhou

第二次 customDomain: false 就不会覆盖了

czy88840616 avatar Sep 08 '22 12:09 czy88840616