【问题标题】:Hosting Vapor Swift App on Google Cloud Platform在 Google Cloud Platform 上托管 Vapor Swift 应用程序
【发布时间】:2016-11-05 14:43:35
【问题描述】:
我已经在 Google Cloud Platform 上设置了一个 Ubuntu 实例,并在上面安装了 Swift-3 和 Vapor。然后我尝试使用vapor build 命令构建 Vapor 应用程序,它成功了。然后我在应用程序文件夹上运行vapor run,它成功启动了服务器,控制台说该服务在本地主机上可用,0.0.0.0:8080。
但是当我在浏览器窗口中输入我的虚拟机的静态 IP 时,我看不到我应该看到的蒸汽页面。相反,我收到了 connection refused 错误。
【问题讨论】:
标签:
hosting
google-compute-engine
google-cloud-platform
vapor
【解决方案1】:
您是否在防火墙规则中打开了此端口。转到网络,然后转到“防火墙规则”并检查您的端口 8080 是否在此处列出。如果没有,请添加它,然后重新尝试访问您的蒸汽应用程序。希望这会有所帮助:)
【解决方案2】:
端口 80 是 HTTP(非 TLS)连接的默认端口。由于 Vapor 连接到端口8080,很可能它被防火墙阻止了。
试试vapor run --port=80 --env=production(你可能需要sudo)
这会将端口设置为80,并将环境设置为生产环境,以防止任何可能减慢应用程序速度的调试日志记录。
编辑:
端口配置现在通过Config/servers.json 文件完成。
{
"default": {
"port": 8080,
"host": "localhost",
"securityLayer": "none"
}
}
但是,您仍然可以通过命令行界面使用更新的命令进行覆盖。
--config:servers.default.port=8080