我应该包含 Meteor 的 $ROOT_URL 环境变量的协议吗?

Should I include the protocol for Meteor's $ROOT_URL environment variable?

Meteor.absoluteUrl 有一个创建 HTTPS URL 的 secure 选项,所以我猜 Meteor 只允许 httphttps 协议。那么不包含协议,只使用 //example.com/ 作为 ROOT_URL 环境变量会有什么不同吗?还是有所作为?

我应该包含 Meteor 的 $ROOT_URL 环境变量的协议吗?

执行Meteor.absoluteUrl can be found here。如您所见,如果 secure 为真,它将 ROOT_URL (options.rootUrl) 修改为 https and ROOT_URL 使用http 协议。

如果您使用 https 托管您的网站,我建议您将其包含在 ROOT_URL 中,例如https://app.example.org。这就是我们所做的,而且效果很好。更改环境变量似乎比修改代码更容易。

请注意,如果您不想指定协议,您应该将 ROOT_URL 设置为 app.example.org 而不是 //app.example.org - 再次查看实现。

以上答案不再正确。似乎 Meteor 已经改变了实现,现在 ROOT_URL 必须是一个有效的 URL 与 http 或 https。 参见 https://github.com/meteor/meteor/blob/87681c8f166641c6c3e34958032a5a070aa2d11a/packages/meteor/url_server.js#L8