golangデプロイiis

王林
リリース: 2023-05-27 12:38:38
オリジナル
859 人が閲覧しました

Web 開発における Golang の人気が徐々に高まっているため、Web アプリケーションの構築に Golang を使用する開発者が増えています。 Golang アプリケーションをデプロイする場合、多くの人は Linux サーバーの使用に慣れていますが、Windows サーバーを使用しているユーザーにとって、Golang アプリケーションを IIS にデプロイするにはどうすればよいでしょうか?この記事では、Golang アプリケーションを IIS に展開する方法を紹介します。

ステップ 1: Golang をインストールする

まず、Windows サーバーに Golang をインストールする必要があります。最新の Golang インストーラーを公式 Web サイト https://golang.org/dl/ からダウンロードし、プロンプトに従ってインストールできます。

インストールが完了したら、Golang の bin ディレクトリをシステムの PATH 環境変数に追加する必要があります。

ステップ 2: 単純な Golang アプリケーションを作成する

Golang アプリケーションを IIS に展開する前に、テスト用の単純な Golang アプリケーションを作成する必要があります。以下は、「Hello, World!」HTTP 応答を返す単純な HTTP サーバー プログラムです:

package main

import (

"fmt"
"net/http"
ログイン後にコピー

)

func main() {

http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
    fmt.Fprintf(w, "Hello, World!")
})

http.ListenAndServe(":80", nil)
ログイン後にコピー

}

このプログラムはポート 80 をリッスンし、ルート パスで HTTP サービスを提供します。このパスにアクセスすると、サーバーは「Hello , World」を返します。 !" 応答。

上記のコードを .go ファイルとして保存し、次のコマンドを使用してプログラムをコンパイルします:

go build .go

Where,

プログラムを実行します:

./

すべてがうまくいくと、プログラムは「Hello, World!」メッセージを表示します。

ステップ 3: IIS をインストールする

IIS で Golang アプリケーションを実行するには、まず IIS をインストールする必要があります。 Windows サーバー マネージャーを使用して IIS をインストールできます。具体的な手順は次のとおりです。

Windows サーバー マネージャーを開きます

[役割と機能] オプションを選択します

「サーバーの役割」オプション 「Web サーバー (IIS)」オプションを選択します。

「Web サーバー (IIS)」オプションで「Web サーバー」および「ASP.NET 4.5」オプションを選択します。

[インストール] ボタンをクリックし、IIS のインストールが完了するまで待ちます。

インストールが完了したら、ブラウザにサーバーの IP アドレスを入力して、IIS が正常にインストールされたかどうかを確認できます。

ステップ 4: Golang アプリケーションを CGI スクリプトとして IIS に展開する

Golang アプリケーションを IIS 上で実行する 1 つの方法は、それを CGI スクリプトとして IIS に展開することです。具体的には、手順は次のとおりです。

新しい Web サイトまたはアプリケーション プールを作成します

IIS マネージャーを開き、[サイト] または [アプリケーション プール] オプションを選択して、[Web サイトの追加] または [アプリケーション プールの追加] をクリックします。ボタン。

Web サイトまたはアプリケーション プールの構成

[Web サイトの追加] または [アプリケーション プールの追加] ダイアログ ボックスに名前、パス、その他の情報を入力します。 Web サイトを作成している場合は、Web サイトのルート ディレクトリとバインドされた IP アドレスとポートを指定する必要があります。アプリケーション プールを作成している場合は、使用する .NET バージョン、認証方法、その他の情報を指定する必要があります。

Golang アプリケーションを CGI スクリプトとしてデプロイする

新しいディレクトリを作成し、コンパイルされた Golang アプリケーションをこのディレクトリに配置します。このディレクトリに web.config ファイルを作成します。このファイルには、IIS が CGI スクリプトを実行する方法に関する情報が含まれています。次の web.config を参照として使用できます:


<system.webServer>
    <handlers>
        <add name="CGI for Golang" path="*.go" verb="*" modules="CgiModule" scriptProcessor="<path to cgi-bin>go.exe" resourceType="Unspecified" />
    </handlers>
</system.webServer>
ログイン後にコピー

< /configuration>

このうち、 は Golang の bin ディレクトリです。

IIS マネージャーで作成した Web サイトまたはアプリケーション プールをクリックし、右側の [アクション] ボックスで [仮想ディレクトリの追加] オプションを選択し、前の手順で作成したディレクトリへのパスを指定します。

テスト アプリケーション

ブラウザを開き、Web サイトの IP アドレスとポートを入力すると、「Hello, World!」という応答が表示されます。

ステップ 5: ISAPI を使用して Golang アプリケーションを IIS に展開する

Golang アプリケーションを CGI スクリプトとして IIS に展開する場合と比較して、ISAPI を使用して IIS に展開すると、パフォーマンスとセキュリティが向上します。具体的な手順は次のとおりです。

Go-ISAPI をダウンロードしてインストールする

Go-ISAPI の最新バージョンを https://github.com/Zer0xFF/goisapi からダウンロードし、次の手順に従うことができます。 README.md ファイル の指示に従ってインストールします。

IIS 上に Web サイトまたはアプリケーション プールを作成します

同様に、IIS マネージャーを開き、「サイト」または「アプリケーション プール」を選択し、「Web サイトの追加」または「アプリケーション プールの追加」ボタンをクリックします。 。

Web サイトまたはアプリケーション プールの構成

同様に、[Web サイトの追加] または [アプリケーション プールの追加] ダイアログ ボックスに名前、パス、その他の情報を入力します。

ISAPI フィルターの構成

作成した Web サイトまたはアプリケーション プールを右クリックし、[Web サイトの管理] または [詳細設定] で、[ISAPI フィルター] または [ISAPI および CGI の制限] を見つけます。オプションを選択し、「追加」オプションを選択して新しいフィルターを追加します。実行可能ファイルの名前とパスを入力し、「許可」オプションを選択してフィルターの実行を許可します。

ISAPI 拡張機能の構成

IIS マネージャーで、[サーバー ファーム] オプションを選択し、[ISAPI と CGI] または [ハンドラー マッピング] を選択し、[モジュール マッピングの追加] または [モジュール マッピングの追加] ボタンをクリックすると、新しい ISAPI 拡張機能が挿入されます。プログラム。名前、パス、コマンドラインパラメータを入力し、「OK」をクリックして保存します。

テスト アプリケーション

ブラウザを開き、Web サイトの IP アドレスとポートを入力すると、「Hello, World!」という応答が表示されます。

結論

この記事では、Golang アプリケーションを IIS に展開する方法を紹介します。 Golang アプリケーションは、CGI スクリプトと ISAPI を使用して IIS に簡単にデプロイできます。 Windows サーバーを使用していて、Golang を利用して Web アプリケーションを構築したい場合は、上記の手順に従って Golang アプリケーションのデプロイを試してください。

以上がgolangデプロイiisの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート