我来自PHP背景,我的意思是你可以很容易地把PHP文件扔进服务器,仅此而已!在Golang怎么样,具体来说是Beego框架,因为我已经用Beego创建了一个网站,但我的障碍是(Q1)如何在Ubunto和NGINX环境中部署?(Q2)在部署之前,我需要编译Beego项目吗?(Q3)我是需要NGINX/Apache作为服务器,还是使用Beego的内置"run“?
谢谢。
发布于 2018-04-03 19:05:15
如何在Ubuntu和NGINX环境下部署?
在本地主机上的特定端口上安装Golang并运行Golang应用程序(例如localhost:9000).
指向在localhost:9000上运行的Golang应用程序的示例服务器块:
服务器{ listen 80;server_name my.domain.com;location /{ proxy_pass http://localhost:9000;proxy_http_version 1.1;proxy_set_header主机$host;proxy_set_header X-真实IP $remote_addr;proxy_set_header X-Forwarded-用于$proxy_add_x_forwarded_for;proxy_set_header X-Forwarded-Proto $scheme;proxy_cache_bypass $http_upgrade;proxy_pass_request_headers on;proxy_read_timeout 150;}}
发布于 2018-04-03 09:23:17
1-几乎安装golang (使用内置版本:sudo apt-get install golang-go或Detailed guide)并构建项目,或者在需要时简单地复制已构建的项目及其库;
2-理想情况下,生产环境不应该包含大多数场景的源代码,因此构建的服务器会更好。
3-虽然不是必需的,但大多数人建议在nginx后面运行golang。这是因为在NGinx/Apache上做了几个优化(例如:静态文件服务),如果你直接在服务器80上运行bin就会错过这些优化。
附注:
go run ...与go build ... +是一回事如果您只是在部署二进制文件,使用相同的OS / configurations.https://stackoverflow.com/questions/49620796
复制相似问题