问题标签 [meteor-galaxy]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
heroku - 如何根据传入域显示不同的内容?
问题
我在这里不知所措,请指出我是否想将苹果与面包进行比较。
我想了解人们是如何做这种特定模式(或一组模式)的,这对我来说似乎很神奇。
注意:下面的具体问题(答案需要是对此的解决方案)
图案
1.银河流星托管
在DNS 配置中,他们要求我们将 CNAME 从 www.customer1.com(您)设置为galaxy-ingress.meteor.com
.
这让我大吃一惊,他们如何能够根据源域重定向多个站点。其中许多可能是高流量。这也应该是高性能的。
2. Github.com 页面
只需在他们的设置中添加您的域并将 CNAME 设置为他们给您的常量域。完毕。
注意:我对细节很模糊 - 转发到常量域或您的
GH pages user domain
类似user.github.io
,不要准确回忆。
3. Gitlab.com
他们给了你一个 IP 来指向A record
,不过,这对我来说似乎对正常运行时间不太友好。
PS:我爱这些家伙,Git + CI + docker repo 免费,我一定是在做梦。
4. Heroku
- 通过命令行或通过他们的 web gui 添加域。
- 将 CNAME 添加到您的 app-name.heroku
这(如上面的几个)将是最好的,xyz.herokuapp.com
即使没有自定义域,您也可以使用默认 URL。
5.浪涌.sh
- 将域添加到一个名为 CNAME 的文件(我很怀疑,最初,这会起作用,它太简单了:))
- 将 CNAME 添加到您的 xyz.surge.sh 网址
6. 模数.io
(我可以继续使用这个列表)
具体问题
我想根据上面的设置
- 当 www.website1.com 具有到 ingress.yourwebsite.com 的 CNAME 时,显示与其站点相关的内容
- 当 www.website2.com 具有到 ingress.yourwebsite.com 的 CNAME 时,显示与其站点相关的内容
- URL 应显示 www.website1.com 或 www.wesbite2.com 而不是 ingress.yourwebsite.com
- 以编程方式添加新站点很容易
- 保持高性能和正常运行时间友好
- 在 IaaS(数字海洋、AWS 等)提供商上实施。(尽管正如一个答案所暗示的那样,您可以使用 PaaS(Heroku、Modulus 等)提供者的 API,这不是作弊,因为这样做一无所知,因为 API 抽象了实现)
性能:我的意思是,如果可以在 DNS 层完成,您就不会在应用层执行此操作。
正常运行时间友好:我的意思是,如果服务器实例出现故障,该服务不会停止工作
奖金
如何使 website1.com 和 website2.com 工作(注意没有www.
)?
如www.website1.com
转发到website1.com
(或根据您的喜好以其他方式)
我想像谷歌应用程序一样在内部进行设置,我不希望用户在他们的 DNS 上进行花哨的设置,比如根目录下的 CNAME 等。
技术偏好
如果可能,请使用其中之一而不是其竞争对手。当您通过这样做做出次优选择时,请提及。
为了:
- 流星JS
- 节点JS
- Javascript
- Cloudflare.com API
- Nginx
- 任何高星级的 github.com 存储库(例如,1k+)
PS:我提到这个偏好不是一个dou*he,而是重用我已经知道的东西。
可能的解决方案(我不是在寻找):
- iframe(糟糕的 SEO 等)
- mod_rewrite(是 github 和其他人使用 mod_rewrite,似乎是应用程序级别和 kludgy)
更新 #1(2016 年 7 月 13 日)
我试过的
- 使用自定义域(例如 xyz.com)将meteorJS 应用程序部署到heroku,并尝试以编程方式路由a.xyz.com 等,出现此域中不存在herokuapp 之类的错误。
- 阅读了很多关于 hoerku 的通配符域但没有帮助的信息
- 使用自定义域(例如 xyz.com)将meteorJS 应用程序部署到meteor.com,并尝试以编程方式路由a.xyz.com 等,但出现错误,例如该域中不存在meteor 应用程序。
- 他们无法访问 DNS(我认为这需要工作的地方)
- meteor.com 免费托管已关闭
- 我猜这应该比我正在制作的缠结的毛线球更容易。
- 如果我可以以编程方式设置
CNAME
s (使用 cloudflare.com API,这可能在其他地方吗?)website1.yourwebsite.com
当有人点击时website1.yourwebsite.com
,我应该知道根据 URL(应用程序级别)提供哪些内容,然后我可以301 redirect
对实际主机做一个?URL 更改为301 redirect
。当!
- 刚刚偶然发现https://en.wikipedia.org/wiki/Virtual_hosting,正在阅读。
更新 #2(2016 年 7 月 30 日)
- 更新问题以澄清这需要在 IaaS(数字海洋、AWS 等)上实施。如果您使用的是 PaaS(Heroku、Modulus 等)提供者的 API,您仍然不知道这种模式是如何实现的,它已经被 API 抽象掉了。
meteor - 如何在 Meteor Galaxy 上下载 Javascript 服务器日志
好吧,这几乎概括了它:如何下载 Meteor Galaxy 项目(所有容器)的完整服务器日志文件。使用 Galaxy 提供的 GUI 不足以搜索大量服务器日志。
谢谢。
meteor - Meteor Galaxy 部署 websocket 连接失败并出现 301
连接到ws://my-app.com/websocket
时,失败并出现301
错误(永久移动)。
meteor - Meteor Galaxy 自动缩放
Meteor Galaxy 是否像 Modulus 一样提供对自动缩放的支持?
示例:如果超过 60% 的 CPU 或内存消耗超过它应该自动扩展并添加另一个容器。
meteor - Meteor - 此域名已在 Galaxy 上使用
我正在尝试将我的流星应用程序部署到 Galaxy 到一个新的子域,我们称之为 xxx.mydomain.com。我得到以下控制台输出:
我没有这个域的应用程序,我猜是其他人在使用它?我该如何解决?我尝试查找此错误,但 Google 和 Meteor 文档上没有显示任何内容,似乎也没有帮助。
meteor - 如何导航到我的 Galaxy 仪表板?
我想重新部署我的项目,但我丢失了将我带到我的银河仪表板以检查我的域的链接。(连同重新部署命令)
我试图在网上搜索链接,但不幸的是我没有运气。
我不知道我在找到链接时会遇到困难,否则我会保存它。
我怎样才能找到链接?
meteor - Google Analytics/Tag Manager + Meteor 的问题
在分析方面遇到 Meteor 项目的问题。我已将 gorillastack:iron-router-gtm 包添加到项目中,并且在站点内部,一切似乎都运行良好。当我们尝试跟踪传入流量时,我们会遇到问题。
使用 UTM 代码(来源、媒介、活动等)和自动标记时,跟踪参数不会记录在 Google Analytics 中。
谷歌分析将付费搜索流量分类为“自然”或“直接”而不是“每次点击费用”。
我还需要用 Meteor 做些什么来解决这个问题,或者我需要更改 GA 内部的设置吗?
meteor - Meteor Galaxy 上的传入 POST 请求失败
一段时间以来,我一直在使用 Mailgun 路由成功地接收到 Meteor 应用程序的传入电子邮件,但它现在突然停止工作。
我的设置是将域的所有电子邮件转发到 Mailgun,然后将它们路由到我的应用程序端点(通过 POST 请求)并解析它们。Mailgun 提供了一个测试工具,我可以在其中输入我的应用程序端点 URL,它现在给我以下响应:
该应用程序托管在 Galaxy 上,如果有任何帮助,下面是我的“传入”路线的样子。
有任何想法吗?
更新:切换到 http 没有帮助..
python - 在由galaxy托管的生产流星应用程序中安装python模块
我有一个流星项目,其中包含我们项目的私有文件夹中的 python 脚本。我们可以使用 exec 轻松地从流星运行它们,我们只是不知道如何在托管我们应用程序的银河服务器上安装 python 模块。由于模块已安装在我们的计算机上,因此在我们的本地主机上运行脚本可以正常工作,但 Galaxy 似乎没有提供命令行或任何东西来安装这些模块。我们尝试通过在流星服务器上调用 exec 命令来创建自己的命令行,但它找不到任何模块。例如,当我们尝试安装 pip 时,服务器记录了“无法找到 pip”。
基本上我们可以运行 python 脚本,但由于它们依赖于模块,galaxy 会抛出错误,我们不确定如何安装这些模块。有任何想法吗?
谢谢!