これにはたくさんの投稿があり、私は今までにたくさんのことを試してみました。しかし無駄に。私自身Winforms開発者である私の会社がWebのイニシアチブを取っているので、基本的に、数日前にこのWebのものに取り組み始めました。
私はASP.Netプロジェクトを持っていて、それをローカルのIISでホストしたいのです。 Project properties -> Web
設定で、私はUse Local IIS Server
を選び、localhost/MyApp
としてURLを与えました。私は私のFirefoxブラウザでそれにアクセスしようとしました、そしてHTTP Error 503. The service is unavailable.
としてエラーを受け取りました
以前は他にもたくさんのエラーが出ました。しかし、これを打った。これらは私のプロジェクトにある設定です
Enable 32 bit Application
プロパティはtrueですAny CPU
に設定しかし、私は奇妙な行動について言及したいと思います。以下は私が直面していることです
localhost/MyApp
としてurlを与えることによって)HTTP Error 503. The service is unavailable
としてエラーを受け取ります私は 次のリンク を見ました、そして私はすでにそれを試みました。上記の動作のために私は ここ に達しました。このリンクによると、コンピュータ名に.
を含めるべきではありません。コンピュータ名に.
がありませんが、-
があります。また、私のドメイン名には.
が含まれています。その上私のオフィスのラップトップと私たちのTFS設定は私たちのドメインとコンピュータ名に結び付けられているので私はこれらの設定を変更することはできません。
誰が私が起こっていることを理解するのを手伝ってくれる?案内してください。ありがとう。
編集
Global.asax
に以下のコードがあります。同じファイル内でApplication_BeginRequest
メソッドが空です。
protected override void Application_Start(object sender, EventArgs e)
{
base.Application_Start(sender, e);
String _path = String.Concat(System.AppDomain.CurrentDomain.RelativeSearchPath, ";",
System.Environment.GetEnvironmentVariable("PATH"));
System.Environment.SetEnvironmentVariable("PATH", _path, EnvironmentVariableTarget.Process);
MyAppLog.Initialize();
MyAppLog.WriteMessage("Application Started");
}
更新
コメントの提案に従って、私はCassiniからウェブサイトを運営することができます。
OK、私は1つの特定のケースのための別の解決策を持っています:あなたがWINDOWS 10を使っていて、あなたが最近(Anniversary Updateパッケージで)それを更新したなら、あなたは以下のステップに従う必要があります:
Windows Event Viewer
を確認します - Win + Rを押して、eventvwr
name__と入力し、Enterキーを押します。Windows Event Viewer
の左側にあるWindows Logs
- > Application
name__をクリックしてください。IIS-W3SVC-WP
のためにいくつかのエラーを見つける必要があります。モジュールDLL >> DLLへのパス<<の読み込みに失敗しました。データはエラーです。
Control Panel
- > Program and Features
に行かなければなりません、そして、どのdllがロードできないかに依存して、あなたは別のモジュールを修理する必要があります:rewrite.dll
の場合IIS URL Rewrite Module 2を検索してChange
name __-> Repair
name__をクリックします。aspnetcore.dll
の場合Microsoft .NET Core 1.0.0 - VS 2015 Tooling ...を検索し、Change
name __-> Repair
name__をクリックします。私の状況では、アプリケーションプールはまだ古いパスワードを使用していますが、ログインパスワードが変更されました。アプリケーションプールの[詳細設定]をクリックして、[ID]をリセットするだけです。
私は同じ問題に直面していて、イベントログを使ってそれをデバッグしました。最初にそれは言った: "ソースMicrosoft - Windows - WASからのイベントID 5059の説明が見つかりません"。
その後、 Windows機能のオン/オフ を使用してWASをオンにしました。それから私はeventvwr "マイクロソフト - ウィンドウズ - DistributedCOMが見つかりません"でこれを見ました。
最後に、私はあきらめてApp Pool(Webサイトへのアクセスを止めるために使用されていたもの)を削除し、そのまま作成しました。これで問題は解決しました。
Windows 10に来てAnniversary updateに更新した後は、このリンクをチェックしてください。
リンクがダウンした場合:イベントログに、aspnetcore.dll、rewrite.dll(ほとんどの場合は他の人も同様です)のロードに失敗したことを示している場合、見つからないアイテムを修復する必要があります。
これまでに経験した2つの具体的な問題とそれらを修正する方法がありますが、まったく異なるものにぶつかる可能性があります。
"C:\WINDOWS\system32\inetsrv\rewrite.dll" (reference)
Go to "Programs and Features" (Win+X, F) and repair "IIS URL Rewrite Module 2".
"C:\WINDOWS\system32\inetsrv\aspnetcore.dll" (reference)
Go to "Programs and Features" (Win+X, F) and repair "Microsoft .NET Core 1.0.0 - VS 2015 Tooling ...".
McAfee HIPSがあり、イベントビューアのアプリケーションログに次のエラーが表示された場合
モジュールDLL C:\ Windows\System32\inetsrv\HipIISEngineStub.dllを読み込めませんでした。
データはエラーです。
それから私の場合、次の問題が解決しました。 https://kc.McAfee.com/corporate/index?page=content&id=KB72677&actp=LIST
ページからの引用:
- 開始]をクリックして実行]をクリックして、エクスプローラと入力して[OK]をクリックします。
- 次の場所に移動します。%windir%\ system32\inetsrv\config
- メモ帳で編集するためにAdministratorとしてファイルapplicationHost.configを開きます。
<globalModules>セクションを編集して、次の行を削除します。
<add name = "MfeEngine" image = "%windir%\ System32\inetsrv\HipIISEngineStub.dll" /><modules>セクションを編集して、次の行を削除します。
<add name = "MfeEngine" />- ApplicationHost.configファイルの編集が終了したら、ファイルを保存し、iisresetを使用するかシステムを再起動してIISサーバーを再起動します。
初めてサービスを追加して、そのためのアプリプールを作成したとき。私はコマンドプロンプトから "iisreset"をした、そしてそれは働いた。
私は同様の問題を抱えていました。 [ローカルセキュリティポリシー]> [ローカルポリシー]> [ユーザー権利の割り当て]の下の[バッチジョブとしてログオン]ポリシーにユーザーを追加して解決しました。
私の場合、私はイベントログをチェックし、エラーがファイル '\\?\'、行番号 '0'から設定データを読み取ろうとしている '設定ファイルを読み取れませんでした'であることを見つけました。データフィールドにエラーコードが含まれています。
エラーコードは2307です。
C:\ inetpub\temp\appPools内のすべてのファイルを削除し、IISを再起動しました。それは問題を修正しました。
私はiis 8.5でも同じ問題を抱えていました。 Windowsログ - >アプリケーションの下のeventViewerを検索した後、私は "C:\ Windows\Microsoft.NET\Framework64\v4.0.30319にある.netフレームワークのmachine.configファイルに対するパーミッションエラーがあることに気づきました。\Config\machine.config "#:。それにIIS_IUSRSの許可を与えることで私の問題は解決しました(ファイルを右クリック - >プロパティ - >セキュリティ - >編集 - >追加 - > IIS_IUSRS)
WebサイトをVisual Studioデバッガで実行できる場合は、コード内のどこでアプリケーションプールがクラッシュしているのかを確認できる可能性があります。私の場合は、関数が再帰的に無制限に呼び出されているため、スタックオーバーフローが発生しました。注:WindowsイベントログとIISログは、問題を診断するのに役立ちませんでした。
私はこのエラーを経験していました、そして、私のケースでは原因はしばらく前に私がユーザーパスワードを修正したということでした、そして503エラーは私がアプリケーションプールを再開するまで現れませんでした。
だから私はそれがアプリケーションプール/詳細設定/アイデンティティ/ [...] /設定... /パスワード/パスワードの確認で新しいパスワードを設定することを修正しました
Orhanの回答からのリンク で概説されている手順に加えて、IIS Manager> Server Root> Modules> Configure Native Modulesに移動して、ネイティブモジュールを追加で削除する必要があります。 MfeEngineを選択してから削除を選択します。
私は同様の問題を抱えていました、私のアプリプールはすべて、それらに対してWebリクエストが行われるたびに停止していました。イベントビューアで次のようなエラーが表示されました。
アプリケーションプール 'appPoolName'のワーカープロセスが、ファイル '\?\ C:\ inetpub\temp\apppools\appPoolName\appPoolName.config'から構成データを読み取ろうとしているときに、エラー '構成ファイルは整形式XMLではありません'を検出しました番号 '3'。データフィールドにエラーコードが含まれています。
これは私にapplication.configにエラーがあったことを私に言った:
C:\ Windows\System32\inetsrv\config\applicationHost.config
私のシナリオでは、デプロイ時にweb.configをIISという要素で明確に嫌いに編集しました。applicationHost.configはweb.configを削除し、この不適切な要素を挿入しました。
不足しているファイルがAnniversary Update
である場合、つまりcgi.dll
が持っている場合、これらのEvent Viewer
の問題に追加するために(Microsoftに感謝)
The Module DLL C:\WINDOWS\System32\inetsrv\cgi.dll failed to load. The data is the error.
次に、これを修正します。
IIS Manager
に移動しますConnections
パネルの一番上の行を選択します(通常はPC名)Management
の下に、Web Platform Installer
があるはずですProducts
を選択しますcgi
の検索タイプで、<Enter>
を押しますIIS: CGI
を選択してから、右側のAdd
をクリックし、最後に下部のInstall
をクリックします「マネージドパイプラインモード」を「クラシック」から「統合」に変更してもうまくいきました。アプリケーションプール - >基本設定で変更できます。