IIS で Go Web アプリケーションを実行するにはどうすればよいですか?

Barbara Streisand
リリース: 2024-10-29 01:41:02
オリジナル
977 人が閲覧しました

How can I run Go web applications on IIS?

IIS での Go Web アプリケーションの実行

質問:

Go Web アプリケーションは IIS 上でデプロイして実行できますか?

答え:

はい、IIS で Go Web アプリケーションをホストすることができます。ただし、Azure の既定のアプローチを使用する場合と比較して、追加のセットアップが必要です。

解決策:

Go アプリケーションの IIS サポートを有効にするには、次の手順に従います。

  1. HttpPlatformHandler モジュールをインストールします: このモジュールは、IIS と Go ランタイム間のブリッジとして機能します。 Microsoft Web プラットフォーム インストーラーからダウンロードしてインストールします。
  2. web.config を構成します: 次の内容を含む新しい web.config ファイルを Go アプリケーションの Web ルート ディレクトリに作成します。
<code class="xml"><?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <handlers>
            <add name="httpplatformhandler" path="*" verb="*" modules="httpPlatformHandler" resourceType="Unspecified" />
        </handlers>
        <httpPlatform processPath="path/to/go.exe" arguments="run path/to/server.go" startupTimeLimit="60">
            <environmentVariables>
              <environmentVariable name="GOROOT" value="path/to/go" />
            </environmentVariables>
        </httpPlatform>
    </system.webServer>
</configuration></code>
ログイン後にコピー
  1. アプリケーションをデプロイします: Go アプリケーションをビルドし、必要なファイルを Web ルート ディレクトリにコピーします。
  2. アプリケーションを実行します: IIS マネージャーを開き、新しい Web サイトを作成し、Web アプリケーションの Web ルート ディレクトリを指すように設定します。

注: HttpPlatformHandler モジュールをインストールすると、以前はこの目的で使用されていたリバース プロキシまたは FastCGI。

ASP.NET Core モジュールの使用を避ける:

ASP.NET Core を使用することは可能ですが、 IIS 上で Go アプリケーションをホストするためのモジュールですが、お勧めできません。 HttpPlatformHandler の歴史で説明されているように、このアプローチにはパフォーマンス上の欠点とセキュリティの問題があります。

以上がIIS で Go Web アプリケーションを実行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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