Nginxを使用してGolangサービスをリバースプロキシする方法
Golang は高速、効率的、安全なプログラミング言語であり、その優れたパフォーマンス特性により、バックエンド サービスの構築に Golang を使用する開発者が増えています。 Golang コードを作成した後、実稼働環境にどのようにデプロイするのでしょうか?良いオプションの 1 つは、Nginx をリバース プロキシとして使用することです。
この記事では、Nginx を使用して Golang サービスをリバース プロキシし、CentOS 7 システムにデプロイする方法を紹介します。
1. Golang のインストール
まず、Golang をインストールする必要があります。 CentOS 7 システムでは、次のコマンドを使用してインストールできます:
yum install -y golang
インストールが完了したら、次のコマンドを使用して成功したかどうかを確認できます:
go version
If the version Golang の数が出力されればインストール成功です。
2. Golang サービスを作成する
次に、簡単な Golang サービスを作成します。この例では、現在時刻を返すことができる HTTP サーバーを作成します。コードは次のとおりです:
package main import ( "fmt" "net/http" "time" ) func handler(w http.ResponseWriter, r *http.Request) { fmt.Fprintf(w, "Current time: %s", time.Now().String()) } func main() { http.HandleFunc("/", handler) http.ListenAndServe(":8080", nil) }
コードでは、最初に handler
関数を定義します。リクエストが来ると、この関数は現在時刻を返します。次に、http.HandleFunc
メソッドを使用して、handler
関数を /
パスに登録します。最後に、http.ListenAndServe
メソッドを使用して、ポート 8080
で HTTP サーバーを起動します。
3. Golang サービスをコンパイルする
go build
コマンドを使用して、Golang サービスをバイナリ実行可能ファイルにコンパイルします。 Nginx が実行可能ファイルにアクセスするには、それをディレクトリに配置し、そのディレクトリを PATH
環境変数に追加する必要があります。実行可能ファイルを /root/go/bin
ディレクトリに配置すると仮定すると、次のコマンドを実行してコンパイルし、ディレクトリを PATH に追加できます:
cd /root/go/src/hello go build -o /root/go/bin/hello echo "export PATH=$PATH:/root/go/bin" >> ~/.bashrc source ~/.bashrc
4. Nginx# をインストールします
##リバース プロキシには Nginx を使用するため、最初に Nginx をインストールする必要があります。 CentOS 7 システムでは、次のコマンドを使用してインストールできます:yum install -y nginx
systemctl start nginx
systemctl enable nginx
hello.conf という名前のファイルを
/etc/nginx/conf.d ディレクトリに作成します。
server { listen 80; server_name example.com; location / { proxy_pass http://127.0.0.1:8080; proxy_set_header Host $host; } }
を監視しました。 80 にポートし、リクエストを
127.0.0.1:8080 の Golang サービスに転送します。
proxy_set_header ディレクティブは、Golang サービスが HTTP リクエスト情報を正しく解析できるように、HTTP リクエスト ヘッダーの
Host フィールドを設定するために使用されることに注意してください。
nginx -t
systemctl restart nginx
8080 で実行されており、Nginx も設定されています。 Golang サービスが正常に実行できるかどうかを確認するために、Nginx の外部 IP アドレスまたはドメイン名にアクセスし、返された時刻情報を確認します。すべてが正常に動作する場合は、Golang アプリケーションのデプロイが成功しました。おめでとうございます。
以上がNginxを使用してGolangサービスをリバースプロキシする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









OpenSSLは、安全な通信で広く使用されているオープンソースライブラリとして、暗号化アルゴリズム、キー、証明書管理機能を提供します。ただし、その歴史的バージョンにはいくつかの既知のセキュリティの脆弱性があり、その一部は非常に有害です。この記事では、Debian SystemsのOpenSSLの共通の脆弱性と対応測定に焦点を当てます。 Debianopensslの既知の脆弱性:OpenSSLは、次のようないくつかの深刻な脆弱性を経験しています。攻撃者は、この脆弱性を、暗号化キーなどを含む、サーバー上の不正な読み取りの敏感な情報に使用できます。

この記事では、プロファイリングの有効化、データの収集、CPUやメモリの問題などの一般的なボトルネックの識別など、GOパフォーマンスを分析するためにPPROFツールを使用する方法について説明します。

この記事では、GOでユニットテストを書くことで、ベストプラクティス、モッキングテクニック、効率的なテスト管理のためのツールについて説明します。

Go Crawler Collyのキュースレッドの問題は、Go言語でColly Crawler Libraryを使用する問題を調査します。 �...

バックエンド学習パス:フロントエンドからバックエンドへの探査の旅は、フロントエンド開発から変わるバックエンド初心者として、すでにNodeJSの基盤を持っています...

この記事では、go.modを介してGOモジュールの依存関係の管理、仕様、更新、競合解決をカバーすることについて説明します。セマンティックバージョンや定期的な更新などのベストプラクティスを強調しています。

この記事では、Debianシステムの下でPostgreSQLデータベースを監視するためのさまざまな方法とツールを紹介し、データベースのパフォーマンス監視を完全に把握するのに役立ちます。 1. PostgreSQLを使用して監視を監視するビューPostgreSQL自体は、データベースアクティビティを監視するための複数のビューを提供します。 PG_STAT_REPLICATION:特にストリームレプリケーションクラスターに適した複製ステータスを監視します。 PG_STAT_DATABASE:データベースサイズ、トランザクションコミット/ロールバック時間、その他のキーインジケーターなどのデータベース統計を提供します。 2。ログ分析ツールPGBADGを使用します
