Azure の開発を始めたばかりです。Asp.net ロールを使用して Azure プロジェクトを作成しましたが、変更を加えずにデバッグしようとすると、次のエラーが表示されます:「windows azure Web ロール エントリ ポイント ホストが動作を停止しました」。
2 に答える
%UserProfile%\AppData\Local\Temp ディレクトリを確認してください。そこには、IISConfigurator.log と Visual Studio Web Debugger.log を含むいくつかのファイルが表示されます。それらのファイルの内容を確認してください。
更新: 後の SDK には、%UserProfile%\AppData\Local\dftmp\IISConfiguratorLogs\ にあります。
%UserProfile%\AppData\Local\Temp ディレクトリを確認してください。IISConfigurator.log を含むいくつかのファイルが表示されるはずです。
SDK v1.6の場合、パスは% UserProfile %\AppData\Local\dftmp\IISConfiguratorLogs\IISConfigurator.log でした(最新の SDK には注意してください。パスが変更されているようです)。パス %MyPathOnTheBuildMachine% へのユーザー IUSR および NT AUTHORITY\NETWORK SERVICE へのアクセス':
IISConfigurator Information: 0 : [00004816:00000004, 2011/12/08 13:01:51.971] Adding access to users IUSR and NT AUTHORITY\NETWORK SERVICE to path %MyPathOnTheBuildMachine%
IISConfigurator Information: 0 : [00004816:00000004, 2011/12/08 13:01:51.972] Caught exception
IISConfigurator Information: 0 : [00004816:00000004, 2011/12/08 13:01:51.974] Exception:System.InvalidOperationException: Method failed with unexpected error code 3.
at System.Security.AccessControl.NativeObjectSecurity.CreateInternal(ResourceType resourceType, Boolean isContainer, String name, SafeHandle handle, AccessControlSections includeSections, Boolean createByName, ExceptionFromErrorCode exceptionFromErrorCode, Object exceptionContext)
at System.Security.AccessControl.DirectorySecurity..ctor(String name, AccessControlSections includeSections)
at System.IO.DirectoryInfo.GetAccessControl(AccessControlSections includeSections)
at Microsoft.WindowsAzure.ServiceRuntime.IISConfigurator.FileManager.AddAllowAceIterative(DirectoryInfo dir, FileSystemRights rights, IdentityReference[] accounts)
at Microsoft.WindowsAzure.ServiceRuntime.IISConfigurator.FileManager.AddAllowAce(DirectoryInfo dir, FileSystemRights rights, Boolean inherit, IdentityReference[] accounts)
at Microsoft.WindowsAzure.ServiceRuntime.IISConfigurator.Security.AddAppPoolSidAceToVdir(String appPoolName, String sitePath, String appPoolSid)
at Microsoft.WindowsAzure.ServiceRuntime.IISConfigurator.IISConfigurator.Deploy(String roleId, WebAppModel appModel, String roleRootDirectory, String sitesDestinationDirectory, String diagnosticsRootFolder, String roleGuid, Dictionary`2 globalEnvironment)
あるマシンでソリューションをパッケージ化 (cspack) したのに、別のマシンで実行 (csrun) しようとしたことが判明しました。そのため、一方のマシンには存在するが、もう一方のマシンには存在しないディレクトリに権限を付与しようとしました。
コードを cspack と csrun を同じマシン上で実行することを多くの人が確信しています (たとえば、自動化されたビルドとデプロイを行う場合はそうではないかもしれません)。