#Golang プログラムをサーバーにデプロイする方法
環境
開発環境: mac本番環境: virtualbox 上の CentOS 6.8 (仮想マシン) virtualbox
サーバー環境
プロセス
go のコードpackage main import ( "fmt" "log" "net/http" ) func sayHello(w http.ResponseWriter, r *http.Request) { fmt.Fprintf(w,"您看到我了") } func main() { http.HandleFunc("/",sayHello) log.Println("启动了") err := http.ListenAndServe(":9000",nil) if err != nil{ log.Fatal("List 9000") } }
env GOOS=linux GOARCH=386 go build main.go
その時に遭遇した落とし穴は次のとおりです
1. バイナリファイルが実行できないと表示される
バイナリ ファイルを実行できませんこの理由は、コンパイルの実行環境が間違っているためです。つまり、上記の 386 を実行しているサーバーの環境に置き換える必要があります。 uname -a チェックを使用できます。
2. 実行はできますが、アクセスできません
この問題は通常、サーバーのファイアウォールまたはネットワークの問題が原因で発生します。 サーバーのファイアウォール サービス iptables stop を単純かつ失礼に無効にして、アクセスできるかどうかを確認できますが、実際の運用環境では、ファイアウォールを無効にすることはお勧めできません。 実際のオンライン運用を展開する場合は、セキュリティやプロセス保護などが必ず必要になります。この記事は展開についての単なる紹介であり、これについては説明しません。 Go 言語の知識について詳しくは、PHP 中国語 Web サイトのgo 言語チュートリアル 列に注目してください。
以上がgolang をサーバーにデプロイするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。