20

Windowsコマンドを使用してIIS7でapplicationHost.configファイルを再構築する方法はありますか?または、このファイルを変更して問題の修正を手伝ってもらえれば、それでも構いません。このファイルを他のサーバーと比較すると、サイトといくつかのアプリケーションプールを削除した後、欠落しているか異なる非常に重要なセクションに気づきました。

私はIIS7の専門家ではありませんが、7年間使用しています。新しいサイト構成の適切な手順をすべて実行したと確信していますが、それでもこのエラーが発生します。"401.1 "You are not authorized to view this page. You do not have permission to view this directory or page using the credentials that you supplied."

C:\Windows\System32\inetsrv\config\applicationHost.config

これは、IIS APPPOOL {app pool user}が存在しないマシンで発生したため、アクセス許可を構成するときに通常使用するように、このユーザーを使用したことはありません。ただし、先週、IIS_IUSRS(このグループにはIUSRを含む)に適切なアクセス許可を追加しましたが、サイトは正常に機能しました。Windows認証を使用しており、他のすべての認証方法はオフになっています。仮想ディレクトリはありません。.NET 4.0、Classic、および32ビットアプリ(詳細設定の下)を使用しています。

バインディングで「C:\ Windows \ System32 \ inetsrv」で次のコマンドを実行してホスト名を手動で更新する必要がありました。これは、VeriSignSSL証明書がバインディングに追加されたときにIISがホスト名をグレー表示するためです。

appcmd set site /site.name:"himc" /+bindings.[protocol='https',bindingInformation='*:443:subdomain.domain.com']

「不良」Webサーバーに欠落しているセクション:

1-「良い」ボックスに存在し、「悪い」ボックスにはありません

<customMetadata>
    <key path="LM/W3SVC/INFO">
        <property id="4012" dataType="String" userType="1" attributes="Inherit" value="NCSA Common Log File Format,Microsoft IIS Log File Format,W3C Extended Log File Format,ODBC Logging" />
        <property id="2120" dataType="MultiSZ" userType="1" attributes="None" value="400,0,,,0&#xA;" />
    </key>
</customMetadata>

2-「良い」ボックスに存在し、「悪い」ボックスにはありません

    <asp>
        <cache diskTemplateCacheDirectory="%SystemDrive%\inetpub\temp\ASP Compiled Templates" />
    </asp>

3-このセクションは「良い」ボックスに存在しますが、2.0(最初の2行)のみが「悪い」ボックスに存在します。

<isapiFilters>
    <filter name="ASP.Net_2.0.50727.0" path="%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_filter.dll" enableCache="true" preCondition="bitness32,runtimeVersionv2.0" />
    <filter name="ASP.Net_2.0.50727-64" path="%windir%\Microsoft.NET\Framework64\v2.0.50727\aspnet_filter.dll" enableCache="true" preCondition="bitness64,runtimeVersionv2.0" />
    <filter name="ASP.Net_2.0_for_V1.1" path="%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_filter.dll" enableCache="true" preCondition="runtimeVersionv1.1" />
    <filter name="ASP.Net_4.0_64bit" path="C:\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet_filter.dll" enableCache="true" preCondition="runtimeVersionv4.0,bitness64" />
    <filter name="ASP.Net_4.0_32bit" path="C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_filter.dll" enableCache="true" preCondition="runtimeVersionv4.0,bitness32" />
</isapiFilters>

4-このセクションは「悪い」ボックスに存在しますが、「良い」ボックスにはありません

    <applicationDependencies>
        <application name="Active Server Pages" groupId="ASP" />
    </applicationDependencies>

5-ssiExecDisableプロパティが「good」ボックスにありません

    <serverSideInclude ssiExecDisable="false" />

6-「不良」ボックスにセクションがありません

        <authentication>
            <anonymousAuthentication enabled="false" />
            <windowsAuthentication enabled="true" />
        </authentication>
4

5 に答える 5

68

どうやら、Microsoftはこれらのファイルの履歴を次の場所に保持しているようです。

C:\inetpub\history\
于 2013-02-13T17:41:45.670 に答える
4

最初にすべての構成ファイルのバックアップを実行してください。

したがって、IISは構成ファイルの履歴をC:\ inetpub\historyに保持しているようです。したがって、IISが正常に機能した最後の既知の日付を覚えてから、構成ファイルの内容をc:\ inetpub \ historyからコピーし、c:\ windows \ system32 \ inetsrv\configの構成ファイルを置き換える必要があります。

幸運を!

于 2017-10-16T15:30:45.570 に答える
1

現在アクティブなapplicationHost.configを変更するだけの場合は、次の記事を参照してください。

64ビットWin2008でApplicationhost.configを編集する

記事にあるように、何らかの理由でapplicationHost.configはエクスプローラーを使用してのみ表示され(カスタムファイルマネージャーからファイルが表示されなかった理由を説明しています)、メモ帳を使用して問題なく編集できます(これも他のエディターとあなたです)問題が発生します)。

于 2014-08-12T15:24:01.360 に答える
0

古い構成のバックアップをインストールするには、次のコマンドを使用できます。

c:\windows\system32\inetsrv\appcmd restore backup CFXHISTORY_xxxxxxxx

ここCFXHISTORY_xxxxxxxxで、はのサブフォルダですC:\inetpub\history\

そのフォルダから現在の構成にファイルをコピーする以外にコマンドが何をするかはわかりませんが、何か特別なことをする場合に備えて、おそらくそれを使用する必要があります。

または、 https://stackoverflow.com/a/14859645/2279059で説明されているように、バックアップからファイルをコピーすることもできます

于 2019-10-11T11:50:05.577 に答える
-1

inetpub履歴フォルダは私のお尻を保存しました。ルートフォルダにある2つのファイルを復元するだけで、wallahの問題は解決しました。

于 2017-01-18T21:11:19.473 に答える