0

既定の Azure Web ロールは、Web サイトを特定の IP アドレスにバインドしているようです。デプロイの一環として、localhost または 127.0.0.1 をリッスンするように Web サイトをバインドする必要があります。

サービス定義を次のように構成しました。

<Startup>
      <Task commandLine="Startup.cmd" executionContext="elevated">
        <Environment>
          <Variable name="ComputeEmulatorRunning">
            <RoleInstanceValue xpath="/RoleEnvironment/Deployment/@emulated" />
          </Variable>
        </Environment>
      </Task>
    </Startup>

Starup.cmd ファイルで、私は以下の行を持っています:

eventcreate /ID 1 /L APPLICATION /T INFORMATION /SO AzureRoleStartup /D "実行中: BindIISSite.ps1" powershell -NoProfile -ExecutionPolicy unrestricted -Command ".\BindIISSite.ps1"

BinIISite.ps1 には、以下の PS スクリプトがあります。

import-module WebAdministration
New-WebBinding -Name "*MyWebsite*" -IPAddress "*" -Port 8089 

上記のすべての設定で、「MyWebSite」がポート 8089 の * にバインドされていないことに気付きました。

しかし、Azure VM で startup.cmd を手動で実行すると、正しくバインドされているようです。上記の何が間違っているのでしょうか?

4

1 に答える 1

0

New-WebBindingコマンドレット パラメーターはNameワイルドカード文字を受け入れないため、スクリプトではリテラル name を持つサイトを探しており*MyWebSite*、バインディングが失敗する可能性があります。

于 2013-12-10T05:50:25.837 に答える