使用自定义域时Heroku配置变量更改

olqngx59  于 11个月前  发布在  其他
关注(0)|答案(1)|浏览(116)

正如标题所描述的,我最近试图使用heroku部署我的MERN应用程序,我正在设置sunshine.xyz我从Godaddy购买的域名www.example.com。我在heroku上设置了自定义域名,并将提供的DNS目标添加到CNAME记录中,并在Godaddy上使用www,这是我在几个不同的地方读到的。这一切都很好。我的SSL证书都很好,我可以通过访问自定义域名https://www.sunshine.xyz访问我的网站前端。我遇到的问题是,它似乎我的前端和后端没有通信,我相信这归结于我在heroku中的配置变量,主要是ORIGIN(用于我的CORS配置)和REACT_APP_SERVER(连接我的前端到后端)。
使用Origin:

const origin = process.env.ORIGIN;
...
app.use(cors({ credentials: true, origin: `${origin}` }));

字符串
使用REACT_APP_SERVER:

const server = process.env.REACT_APP_SERVER;
...
fetch(`${server}/profile`, {
      method: "GET",
      credentials: "include",
    })
    ...


现在我也有一个staging环境,也与heroku一起设置,当简单地使用heroku提供的URL以REACT_APP_SERVER查看我的应用程序并在heroku上的配置变量中将ORIGIN设置为true时,它可以很好地工作。然而,当使用这个新的自定义域时,我不知道如何设置这些变量以使我的服务器和前端通信。
对于ORIGIN,我尝试了https://www.sunshine.xyzhttps://sunshine.xyz和true。对于REACT_APP_SERVER,我尝试了heroku提供的原始URL来查看我的应用程序(https://sunshine-website-43bdd7b1a0fd.herokuapp.com/),设置域时提供的DNS目标(infinite-rat-vvdkv7ml30w78pt7a30aor61.herokudns.com),我的自定义域(https://www.sunshine.xyz),没有一个工作。
有没有人知道如何设置这两个配置变量来让它工作?或者如果你认为这不是问题所在,那可能是什么?

nr7wwzry

nr7wwzry1#

所以基本上现在我已经将ORIGIN设置为true,将REACT_APP_SERVER设置为https://www.sunshine.xyz,我重新部署了应用程序,一切似乎都在工作。可能不是解决问题的灵丹妙药,但它现在正在工作。此外,我知道这可能不是最好的事情有ORIGIN设置为真与我的CORS配置,因为这样任何人都可以向服务器发出请求,所以我将努力尝试现在改变这一点。

相关问题