web-dev-qa-db-ja.com

実行中IIS Expressで管理者権限を使用

これは以前に尋ねられましたが、「本当の質問ではない」として締め切られました

https://stackoverflow.com/questions/7450813/how-to-run-a-site-with-administrative-privileges-in-iis-express-7-5

ただし、これも行う必要があるため、本物の質問だと思います。「 実行IIS管理者権限なしで表示 」の方法を説明するMSドキュメントがありますが、これはデフォルトでどのように実行されるかは、この記事の必要性を正直に当惑させますが、管理者権限で実行する方法についてはわかりません。

VS2012 Webサイトを起動しようとすると、IIS express: "ホスト名またはポートにバインドするには管理者権限が必要なため、Webサイトを起動できません"というエラーメッセージが表示され、リンクが表示されます。管理者権限なしでそれを実行することについてのMSドキュメントに。

私が最終的にやろうとしているのは、http:// vs2012:nnnnnとしてローカルで開発サイトを実行することです。これにより、フィドラーデバッガーを接続できます(IE localhostが使用されます)

これは以前はうまく機能していましたが、今朝私は窓を再インストールしてレンガの壁にぶつかりました!

エラーメッセージに示されているように、IIS Express管理者権限を付与する方法を知っている人はいますか?

27
Morvael

私はそれを解決しました。

Visual Studioを管理者特権で実行するように切り替え、IIS Expressの.exeも見つけ、常に管理者特権で実行するように設定しました。2番目が必要かどうかは100%わかりませんが、とにかく両方。

これが同じ問題を抱えている他の人の助けになることを願っています。

[〜#〜]編集[〜#〜]

(2013年8月19日)

これはWindows 7でのみ機能するようでした。Windows8では、結局あきらめて、すべての開発作業にフルブローIIS=.

[〜#〜]編集[〜#〜]

(2018年6月7日)

@Tarostar(以下のコメント)は、これをWindows 10 VS2017で動作させ、他の多くのユーザーは同じ方法を使用する前にWindows 8で動作させました。だから私は私のWindows 8ボックスで何か間違ったことをしていた。

24
Morvael

Visual Studio 2015および2012の場合、このソリューションは機能します。

  1. Visual Studioのソリューションエクスプローラーに移動し、Webプロジェクトを右クリックして[プロジェクトのアンロード]を選択します
  2. 次に同じプロジェクトで、右クリックして[プロジェクトファイルの編集]を選択します
  3. を見つける
    <DevelopmentServerPort>0</DevelopmentServerPort><IISUrl>http://localhost:56058/</IISUrl>
    xmlタグを付けて削除します。
  4. プロジェクトをリロードして実行します。

フォローする画像:

enter image description here

28

「管理者権限で実行する方法」という質問への回答ではなく少し遅いですが、これは上記の問題/エラーの解決策になる可能性があります。

ホスト名またはポートにバインドするには管理者権限が必要なため、Webサイトを起動できません

running-iis-express-from-the-command-line で説明したように、使用するポート番号には次の管理者権限が必要な場合があります。

IIS 1024以下の番号のポートでExpressを実行する場合は、管理者ユーザー権限が必要です。

したがって、1024より大きいポート番号で実行できる場合、管理者権限はまったく必要ない可能性があります。

5
Yahoo Serious

1)CSPROJファイルを見つけます。これはプロジェクトファイル内にあります。2)CSPROJファイルがメモ帳で開かれています(メモ帳にドラッグ)。

<DevelopmentServerPort>0</DevelopmentServerPort>
<IISUrl>http://localhost:57680/</IISUrl>

4)2行を削除します。 5)CSPROJファイルを保存します。

3
shebin c babu

これは私のために働いた!

VSでは、プロジェクトを右クリックしてnload Projectを選択し、再度右クリックしてEdit ProjectName.csprojを選択できます。

DevelopmentServerPortおよびIISUrlタグを削除します。

その後、プロジェクトを右クリックしてReload Projectを選択し、作業を再開できます。 DevelopmentServerPortタグとIISUrlタグを削除すると、VSがポート番号を再生成し、その後プロジェクトは正常に機能します。

私が行ったもう1つのことは、Documents\IISExpress\Config\applicationHost.configファイルを開いて古いサイトを削除することでしたが、それが必要かどうかはわかりません

2
Anil P Babu

手遅れになるかもしれませんが、他の回避策はどれもうまくいきませんでした。これが私がしたことです。私はWeb API 2を使用していますが、IIS Expressがときどき起動せず、プロジェクトを新しいソリューションにロードした後、機能します。しかし、解決策:csprojファイルで、WebProjectPropertiesの下にあるこれらの2つのノードを削除すると、すべてが設定されます。

  • DevelopmentServerVPath
  • IISUrl
2
Daniel

Morvaelによって提案されたメソッドへの小さな追加-Visual StudioおよびIISExpressに管理者特権を割り当てた後にエラーが発生した場合でも、その後システムを再起動してみてください。私のために働いた。

1
WaughWaugh

私の場合、サイトは管理者権限なしで機能しており、ある時点で停止して管理者のみと連携していました。

ポート番号は、管理者権限を必要としない1024を超えていましたが、Visual Studio 2015は管理者権限なしでサイトを実行することを拒否しました。

それが追加されたからだと思った

netsh http show urlacl

それは私に示した

Reserved URL            : http://*:15888/
        User: \Everyone
            Listen: Yes
            Delegate: No
            SDDL: D:(A;;GX;;;WD)

したがって、私の場合は、このリストから削除しましたが、再び機能しました。削除するコマンドは次のとおりです。

netsh http delete urlacl http://*:15888/

次の場所でファイルを変更できます。

%userprofile%\Documents\IISExpress\config\applicationhost.config

ファイルのこの部分に移動します。

<system.applicationHost>
     <applicationPools>
          <applicationPoolDefaults managedRuntimeLoader="v4.0" >

また、アプリケーションプールのタグを追加して、実行時に使用するユーザー名とパスワードを指定します。

<processModel userName="Uname" password="Pword" />
0
Louis Somers

Visual Studioを右クリックして[管理者として実行]をクリックすることで、この問題を解決することができました。

0
user2531854

2018年から始めました... VS 2017でこの問題が発生し、同じエラーメッセージが表示されました。これを修正するために、プロジェクト構成のプロジェクトURLを http:// localhost:1024 から http:// localhost:10244 に変更しました。仮想ディレクトリを作成することを確認したら、ブラウザでプロジェクトを起動できました。 VSを管理モードで実行していません。お役に立てれば!

0
G.P. Greenleaf