web-dev-qa-db-ja.com

起動できません IIS Express Webサーバー

私はasp.net MVC 4ソリューションを持っています。 Visual Studio 2012を使用して開こうとすると、次のようなエラーメッセージが表示されます。

Microsoft Visual Studio

ASP.NET 4.5用のWeb https://localhost:の構成に失敗しました。サイトを正しく実行するには、このサイトをASP.NET 4.5用に手動で構成する必要があります。ローカルマシンにサーバーhttps://localhost:44300/が見つかりませんでした。ローカルIISサーバーが安全な通信をサポートするように設定されていることを確認してください。

OKヘルプ

解決策は開きますが。また、デバッグメニューから実行しようとすると、次のようなエラーメッセージが表示されます。

 Unable to launch the IIS Express Web server.

The start URL specified is not valid. https://localhost:44300/

コードをデバッグできません。どのようにこれらのエラーを取り除き、VS 2012からWebサイトをデバッグ/実行するには?

提案してください。


272
DotnetSparrow

私はまったく同じ問題を抱えていました。
理由 - 不良IIS構成ファイル。

通常は%userprofile%/Documentsにある、自動的に作成されたIISExpressフォルダを削除してみてください。 C:\Users\[you]\Documents\IISExpress

心配しないでください、あなたがもう一度あなたのソリューションを実行したならば、VSはそれを再び作成するべきです - 今度は - 。


編集:フォルダを削除するためのコマンドライン:

rmdir /s /q "%userprofile%\Documents\IISExpress"
337
Yehuda Shapira

VS2015以上を使用している場合

Iisexpressプロセスが実行されていないことを確認してください。

他のプロセスが目的のポートを使用していないことを確認してください。これを行うには、コンソールで(管理者として)netstat -a -bを実行します。

それから次のファイルを削除します

<<path_to_solution_folder>>\.vs\config\applicationhost.config

.vsフォルダが隠されている可能性があることに注意してください。

それから<<project-name>>.csproj.userファイルを見つけてテキストエディタ(メモ帳)で開き、IISUrlの下のWebProjectProperties<IISUrl>http://localhost:XXXXX/</IISUrl>に設定されていることを確認します。ここでXXXXXは希望するポートです。

これをしてアプリを起動しようとした後にあなたが得ることができる

HTTP Error 500.19 - Internal Server Error
The requested page cannot be accessed because the related configuration data for the page is invalid.

それから{Project Properties} - > Webに行き、 "Create Virtual Directory"ボタンを押してください。

enter image description here

210
Mihail Shishkov

@roblllはそれを正しかった。しかし、答えを求めたくなかったあなた方のために、ここにそれがあります:

  1. Visual Studioを閉じます(必要ではないかもしれませんが、問題ありません)。
  2. ドキュメントフォルダに移動します。これが私のIISExpress設定ディレクトリの場所です。
  3. Configフォルダーには、applicationhostというファイルがあります。それを開きます。
  4. プロジェクトの名前を検索してください。それはあなたの以前の試みで爆撃されたときにそれがVisual Studioによってそこに追加されているはずです。
  5. Httpには、httpsに使用する予定のポートに対するバインディングがあることに注意してください。

    //Change this:
    <binding protocol="http" bindingInformation="*:44300:localhost" />
    
    //to this:
    <binding protocol="https" bindingInformation="*:44300:localhost" />
    

覚えておいてください、Visual Studioはあなたが予想したより異なったポートを供給したかもしれません。バインディング内のポートが、プロジェクトのプロパティの[Web]タブにあるものと対応していることを確認してください。

http://www.hanselman.com/blog/WorkingWithSSLAtDevelopmentTimeIsEasierWithIISExpress.aspx

82
Jacob Lauzier

私は同じ問題を抱えていたが、私のために働いた解決策は異なっていた。

  1. VS2013でデバッグ> {YourWebsiteName}プロパティを開きました
  2. [Web]タブをクリックします。
  3. "Servers"の下にある "Override application root URL"がチェックされています。チェックを外して保存しました。

それを実行するために必要なのはこれだけです。

40
centralscru

同じ問題、しかし 管理者モード でVS2013を起動する必要がある。

16
mat

私は同じ問題を抱えていた、それから私はタスクマネージャを開いた - >プロセスは、その後iisexpress.exeプロセスを殺した。その後、私はアプリケーションを実行しようとし、それを正常に実行することができました

15
Vinu

次の手順を試してください。

  1. @Yehuda Shapiraが言ったように IISExpress フォルダを削除する
  2. コンピューターを再起動
  3. プロジェクト内の .vs フォルダを削除します。

頑張ってください!

14
sknight

私の場合、プロジェクトは ネットワークドライブ にあり、IIS Expressフォルダを削除しても、他の回答で説明されているように役に立ちませんでした。私の回避策はプロジェクトをローカルドライブにコピーすることでした、そしてそれはうまくいきました!

14
Amir Chatrbahr

情報を提供してくれた@Jacobに感謝します。

理由は - 設定ファイル applicationhost にあるプロジェクトの間違ったエントリです。

C:\Users\(yourusername)\Documents\IISExpress\config 
  1. すべてのVisual Studioソリューションを閉じます。
  2. IISExpressフォルダの名前を何らかのIISExpress-Copyに変更します(削除する代わりに、そのコピーを保持できます)。
  3. 今度はVSを再度開いてプロジェクトをビルド/デバッグします。これでIISExpressフォルダーが正しい構成で再び作成されたことがわかります。

それは私のために働きました、そしてそれがあなたのためにも働くべきであることを願っています。

12
user2732247

私は同じ問題を抱えていました、原因はフラグ「アプリケーションルートURLを上書きする」がプロパティ - > Webの下で設定されていたということです私がフラグを取り除いた後、IIS Expressは定義されたポートでうまく始めました。

9
vm370

SSLを使用しているように見えるので、設定が必要なようです。これはScott Hanselman自身によるステップバイステップのガイドです。

http://www.hanselman.com/blog/WorkingWithSSLAtDevelopmentTimeIsEasierWithIISExpress.aspx

8
RobIII

将来の読者のためにこれを共有しましょう。手動で仮想ディレクトリを作成するとうまくいきました。

  • ソリューションエクスプローラーでプロジェクトを選択
  • 押す Alt + Enter
  • Webセクションに行く
  • 仮想ディレクトリの作成をクリックします
5
student

私の場合は、IIS Express Webサイトへの外部からの要求を許可し、iisexpress.exeを許可するようにWindowsファイアウォールを設定した後、Visual Studio 2013内から開始できません。そしてそれはローカルと外部の要求をうまく処理します。

C:\Program Files (x86)\IIS Express>iisexpress /site:MyWebSiteName

そのVSが機能した後、私は自分のポートを許可するためにファイアウォールルールを作成しようとしました。

4
deerchao

私にとってうまくいった唯一の解決策は別のテストプロジェクトを作成することでした。その後、次の手順に従います。

  1. プロジェクトを右クリックして、「プロパティー」 - >「Web」に進みます。

  2. Use Local IIS Web ServerセクションのプロジェクトURLの下に、プロジェクトURL(http:// localhost:59002 /)をコピーします。これはテストプロジェクトからのものです。

  3. このエラーが発生しているプロジェクトに移動します。プロジェクトを右クリックして、「プロパティー」 - >「Web」に進みます。

  4. プロジェクトURLをUse Local IIS Web Serverセクションに貼り付けます(テストプロジェクトからコピーしたURL)。テストプロジェクトを閉じて保存します。

  5. テストプロジェクトを削除し、エラーが発生したプロジェクトを実行します。その後動作します...

おそらく最善の方法ではありませんが、それが私がこれを機能させることができる唯一の方法でした。私は私のラップトップをリロードした(ハードドライブがクラッシュした)後、このエラーメッセージを受け取りました。

4
Kerieks

私はVS 2013と同じ問題を抱えていたし、すべての可能な試みの後でさえそれがうまくいかなかった。私の問題は次によって解決された:

- In control panel (Program and Features) I found that all of the IIS related features were unchecked.I finally checked all of those and restarted my system.
- Then I started my VS 2013 as administrator and thats it everything
   worked fine then.

それは私のために働いたので、少なくともあなたはこれを試してみることができます。

3
Saroj

ファイアウォールを無効にした後、私は問題なくそれを実行することができました。

2
Mahaling Khubba

ウイルス対策ファイアウォールを確認し、ネットワークへのアクセスビジュアルスタジオを許可します。例えばnod32の場合:

goto setting (f5) -> network->personal firewall->rules and zones

zone and rule editor」で「setup」をクリックしてvs 2010または12または...を見つけ、ネットワークへのアクセスを許可します。

2
hadi ab

私は今日このエラーに出くわした。 Win 8.1とVS 2013を実行しています。突然私のプロジェクトを実行できなくなり、 "IIS Express Webサーバーを起動できません"というメッセージが表示され、それ以上の情報は得られません。

しばらくして、私はIIS Expressがすべてを開始できなかったすべてのプロジェクトが.net 3.5を実行していたことを知りました。それ以降のバージョンを実行しているプロジェクトでも問題ありません。

私にとっての解決策は、.net 3.5を削除し(コントロールパネルから - > windowsの機能のオン/オフ)、windowsを再起動して再び.net 3.5を追加することでした。

2
fefferoni

まあ、上記のステップのどれも私のために働きませんでした。私の場合、applicationhost.configファイルに次の2行のコードが抜けていました

 <add name="rules-64-ISAPI-2.0" path="*.rules" verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v2.0.50727\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv2.0,bitness64" />
    <add name="xoml-64-ISAPI-2.0" path="*.xoml" verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v2.0.50727\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv2.0,bitness64" />

これが誰かに役立つことを願っています。

2

仮想マシン用にインターネット接続の共有を自分のマシンに設定します。オフにして、Visual Studio 2015でデバッグできました。しかし、再起動後も一貫してデバッグするには、インターネット接続でインターネット接続の共有が有効になっていなくても、インターネット接続の共有サービスを手動起動に設定する必要がありました。

1
Giles Roberts

VS2012から私の解決策を実行するとき、私は同様の問題を抱えていました:

Unable to launch the IIS Express Web server.  
The start URL specified is not valid. https://localhost:44301/

スタートアッププロジェクトとして誤ったプロジェクトを選択しました。私はCloudプロジェクトをスタートアップにし(プロジェクトを右クリック - >スタートアッププロジェクトに設定)、すべてうまくいきました。

1
scottndecker

IIS Expressレジストリキーを見たときに、私の問題は最終的に解決されました。

HKEY_CURRENT_USER\Software\Microsoft\IISExpress

私のウェブサイトを指し示すエントリCustomUserHomeがありました。

1
AndyKenZ

Visual Studio 2013 Update 3をインストールした後も同じ問題がありました。
VS 2013 can not load Microsoft.VisualStudio.TraceLogPackage.dll
Unable to launch the IIS Express Web server

私の問題は以下の手順で解決しました。

1。 Visual Studio 2013 Update 3を修復する
2。管理者としてDeveloper Command Promptを起動します。
3。 devenv.exe /setupと入力してEnterキーを押します

1
Mohammad Dayyan

私たちのサイトでも同じ問題がありました。これはすべてVisual Studioの内部で修正できました。 2012 Ultimateを使用しています。

私たちが見た根本的な問題は、SSLが有効になっていることです。何らかの理由で、VSが標準のURLと安全なURLに同じポートを割り当てていました。この問題は、TFSからコードを引き出すときに発生したようです。

それを直すために、我々は以下のステップを引き受けました:

  1. プロジェクトを右クリックして プロパティ - > Web
  2. プロジェクトのURLの下に  ローカルIIS Webサーバーを使用 セクションで、URLから "s"を削除して保存します。 (例:https:// :44301からhttp:// :44301に移動します。これにより、次のステップを実行できます)
  3. ソリューションエクスプローラーで、プロジェクトを選択し、[プロパティ]ウィンドウ(表示されていない場合はF4キーを押します)を変更します。  SSL有効 に False それから 本当。標準のURLとは異なる新しいポートが生成されます(私の場合は、SSLとして44301、標準として44305です)。
  4. 「プロパティ」 - >「Web」に戻り、プロジェクトのURLに「s」を追加します。
  5. F5と乗る!

のチェックボックスが  アプリケーションのルートURLを上書きする 未チェックです。

1
JimmyV

他のことを試す前に、1. Visual Studioを再起動し(主にファイルからメモリ常駐オプションを更新するため)、2.システムを再起動します(主に無効なファイルロックのため)。あなたの問題がそのような一時的なものか自己修正的なものであるならば、それらは何も変更することなく行うでしょう。それはPCの再起動で私のために働いた。また、マルチユーザープロジェクトで作業している場合は、最新の実行可能なバージョンを使用していることを確認してください。プロジェクトファイルとあなたはあなたのシステムを混乱させません。これらがうまくいかない場合は、おそらく、立ち往生している、見つからない、または変更が必要な設定を変更する必要があります。他の回答には十分な提案があります。

1

Jason's Shaversシリーズの記事はこちら http://jasonrshaver.com/?tag=/Client+Certificates sslまたは標準のいずれかでアプリを実行できるようにapplicationhost.configサイトエントリを設定する方法を正確に説明するhttp。

彼がお勧めすることの1つは、サイトに2つのバインディングエントリを追加することです。これが私がしたことです。

            <bindings>
                <binding protocol="http" bindingInformation="*:59945:localhost" />
                <binding protocol="https" bindingInformation="*:44300:localhost"/>
            </bindings>

他の設定も変更することをお勧めします。それは私の3台のうち2台のマシンで動作しました。私が手動でアプリケーションHostにサイトを設定するように言われる度に、それは通常バインディングと関係があります。 (複数のWebアプリケーションに同じポートを使用する例)

1
user1161391

私の問題は3倍の解決策を必要としました:

  1. DocumentsフォルダのIISExpressフォルダを削除します。
  2. Webプロジェクトを右クリックして[スタートアッププロジェクトに設定]を選択するか、ソリューションのプロパティからWebプロジェクトをスタートアッププロジェクトに設定します。
  3. 起動URLを設定するか、「現在のページ」または「特定のページ」に設定します。 Mineは「ページを開かないで、外部アプリケーションからの要求を待つ」に設定し、それを「Specific Page」に変更しなければなりませんでした。作業。
1
vapcguy

私は同じ問題を抱えていました。私は自分のマシンのスペースを空けるためにC:/users/パスの下のたくさんのフォルダを削除しました。その後、私はこのエラーを受け始めました。

私はただ私のマシンを再起動しなければならなかった、そしてそれはすべてうまくいった。

1
Yasser

この問題を解決する1つの方法を提案します。

1.次のコンソールコマンドを使用して、\ Documents\IISExpressフォルダーを削除します。rmdir/s/q "%userprofile%\ Documents\IISExpress"

  1. Visual Studioプロジェクトのルートフォルダーの.vs\Config \フォルダー内にあるapplicationhost.configファイルを削除します。

  2. プロジェクトのWebサイトのランダムURLを変更します。VisualStudio内で、ソリューションエクスプローラーのプロジェクトノードを右クリックし、[プロパティ]を選択します。 Webパネルをナビゲートしてから、Project Urlテキストボックスの値を変更します。

  3. 次のスクリーンショットに示すように、1の値を持つ_CSRUN_DISABLE_WORKAROUNDS環境システム変数を追加します(このSOスレッドおよび画像について報告してくれたJuan M. Eloseguiに感謝します)。

enter image description here

がんばろう !

0
yuvalchen

Web上で2時間検索した後、次の手順で解決策が見つかりました - ビジュアルスタジオを閉じる - プロジェクトの.vsフォルダを削除します - ビジュアルスタジオを開き、プロジェクトを再実行

それは私のために働くことは楽しい時間を過ごす

0
Ali Sadri

私は同じ問題を抱えていた、私の場合は私はちょうど私の解決策を掃除してから再構築し、それは私のために働いた

0
RCanhestro

スナップショットを見てください、私は同じエラーに直面したが、次の設定はそれを解決しました

  1. 現在のページを として開始アクションを選択

  2. Serversオプション で特定のポートを選択し、ポート26641を入力し、仮想パスに/と入力します。

  3. NTLMオプションをオフにする

0
Ali Abbas

VS2015

編集ファイル.csproj.user

次のxmlタグを挿入します(すでに存在する場合は重複しないでください)。

<UseIIS>True</UseIIS>
<AutoAssignPort>True</AutoAssignPort>
<DevelopmentServerPort>2870</DevelopmentServerPort>
<DevelopmentServerVPath>/</DevelopmentServerVPath>
<IISUrl>http://localhost:2859</IISUrl>
<OverrideIISAppRootUrl>True</OverrideIISAppRootUrl>
<IISAppRootUrl>http://localhost:2859</IISAppRootUrl>
<NTLMAuthentication>False</NTLMAuthentication>
<UseCustomServer>False</UseCustomServer>
<CustomServerUrl>http://localhost/app</CustomServerUrl>

以下のXMLノードに上記のタグを挿入します。

<ProjectExtensions><VisualStudio><FlavorProperties GUID="{349c5851-65df-11da-9384-00065b846f21}"><WebProjectProperties> 

C:\ Users [you]\Documents\IISExpressディレクトリ内のIISExpressフォルダ全体を削除する必要はありません。

ただコメント:

<binding protocol="https" bindingInformation="*:8090:localhost" />

iISExpressフォルダのapplicationhost.configファイルにあります。

0
Nguyen Ba Thanh

私にとっての解決策はIIS ExpressからローカルIISへの切り替えでした。 Solution properties あなたの仮想ディレクトリが同じポートにバインドされていることを確認してください。

0
tanuk

私は同じ問題を抱えていました。次の手順に従ってください。

1- Documents\IISExpress\configでapplicationhostファイルを開き、存在しない場合は以下のコードを追加します。

            <site name="solutionname" id="2">
                <application path="/" applicationPool="solutionname">
                    <virtualDirectory path="/" physicalPath="physicaladdressofproject" />
                </application>
                <bindings>
                    <binding protocol="http" bindingInformation="*:xxxx:localhost" />
                </bindings>
            </site>

2-次に、プロジェクトのルートファイルに移動し、Visual Stdioの異なるバージョンを使用してプロジェクトに対して行われたすべての更新を削除します

3-次に、[root] .vs\configに移動してapplicationhostを削除します。自動的に作成されます

4 - プロジェクトを実行する

それは私のために働きました。

0
Aida Bigonah

私は同じ問題を抱えていました。プロジェクトのプロパティからポート番号を変更して解決します。ポート番号50624を50625に変更しました。

enter image description here

0

他の解決策のどれも私のために働きませんでした。私はedit-and-continueを無効にしました、そしてすべてが順調です:)

0
Jacob Brewer

私は最近この正確な問題に遭遇しました、そしてそれはプロジェクトがネットワークドライブに保存されたためでした。 IISはNetworkServiceとしてローカルに実行されるため、プロジェクトが保存されているネットワーク共有にアクセスできませんでした。ネットワーク共有からプロジェクトを開くのはベストプラクティスに反すると想定して、そのプロジェクトをローカルのC:\ドライブにコピーした後、プロジェクトは予想どおりに実行されました。

0
Ron DeFulio

IISExpressフォルダ内のコンテンツを削除して、ビジュアルスタジオを閉じて開きます。そしてもう一度走ってください。それはいいはずです。

またはポート番号を変更する

0

ファイアウォールをオフにした後、管理者として開いた後、すべての設定が正しいことを再確認した後にも、私はこの問題を抱えていました。

私の問題は、SSLをローカルでテストしたいだけでなく、LANを介してサービスを利用したいという点でも独特でした。そのため、アプリのURLをローカルIP(別名別のもの)を使用するように変更しました。私の場合は192.168.1.10です。

Localhostに切り替えてSSLをオフにすることで問題を解決したので、ローカルSSL証明書はlocalhostに対してのみ機能することを発見しました。

0
mrdavenz

私の状況では、IIS Express applicationhost.configファイルのmanagedRuntimeVersion属性にいくつかの要素の誤植がありました。これは、Visual Studio 2012とVisual Studio 2013の両方で発生していました。メッセージの最初の部分だけを受け取りました。

IIS Express Webサーバーを起動できません。

次のメッセージでイベントログにエラーを記録しました。

ワーカープロセスが.NETランタイムバージョンv4.030319を事前にロードできませんでした。

正しいランタイムバージョンはv4.0.30319です(2番目の期間に注意してください)。

修正するための手順

  1. C:\ Users \\ Documents\IISExpress\configに移動します。
  2. Applicationhost.configを編集します。
  3. 設定セクションを探す
  4. 「v4.030319」への参照を訂正して「v4.0.30319」を読みます。

次回Webアプリケーションをデバッグしたときに、Visual StudioはIIS Expressを正常に起動しました。

0
bguffey

IISExpressとProjectを使ってlocalhostとは異なるURLでリスンしようとしていたのですが、元に戻すときにこのエラーが発生し、ここですべての回答を確認してもうまくいきませんでした。

やがてプロジェクトPorperties - > WebのStart Actionの下にある 'Start URL'をチェックしたが、入力ボックスが空だったことに気づいた。これを「現在のページ」に変更すると問題が解決しました。

0
MaxJ

@Yehuda Shapiraによって与えられた答えと共に私は別の変更を加えなければなりませんでした。

<IISUrl>http://localhost:54462/</IISUrl>

そのファイルを削除します。Visual Studioを閉じてから再構築します。これが役立ちます。

0
Debashish Saha