web-dev-qa-db-fra.com

Commande pour reconstruire applicationHost.config dans IIS 7

Existe-t-il un moyen de reconstruire le fichier applicationHost.config dans IIS 7 avec une commande Windows? Ou si vous pouvez m'aider à résoudre le problème en modifiant ce fichier, pas de problème. Lorsque je compare ce fichier à d'autres serveurs, je remarque des sections très importantes qui manquent ou qui sont différentes après la suppression d'un site et de quelques pools d'applications. 

Je ne suis en aucun cas un expert en IIS 7, mais je l'utilise depuis 7 ans maintenant. Je suis confiant d'avoir effectué toutes les étapes appropriées pour une nouvelle configuration de site et cela me donne toujours cette erreur, "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

Cela s'est produit sur une machine où IIS APPPOOL {utilisateur du pool d'applications} n'existe pas. Par conséquent, nous n'avons jamais utilisé cet utilisateur, comme je le fais normalement lors de la configuration des autorisations. Nous avons cependant ajouté les autorisations appropriées à IIS_IUSRS (avec IUSR dans ce groupe) la semaine dernière et le site a bien fonctionné. Nous utilisons l'authentification Windows et toutes les autres méthodes d'authentification sont désactivées. Pas de répertoires virtuels. Nous utilisons les applications .NET 4.0, Classic et 32 ​​bits (sous paramètres avancés). 

Nous avons dû mettre à jour manuellement le nom d'hôte en exécutant la commande suivante dans "C:\Windows\System32\inetsrv" sur la liaison, car IIS estompait le nom d'hôte lorsque le certificat SSL de VeriSign était ajouté à la liaison. contraignant.

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

Sections manquantes sur le "mauvais" serveur Web:

1 - existe sur la "bonne" boîte, manque sur la "mauvaise" boîte

<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 - existe sur la "bonne" boîte, manque sur la "mauvaise" boîte

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

3 - cette section existe sur la "bonne" case, mais seulement 2.0 (les deux premières lignes) existent sur la "mauvaise".

<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 - cette section existe sur la "mauvaise" boîte, mais manque sur la "bonne" boîte

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

5 - La propriété ssiExecDisable est absente de la boîte "bien"

    <serverSideInclude ssiExecDisable="false" />

6 - section manquante sur la case "mauvaise"

        <authentication>
            <anonymousAuthentication enabled="false" />
            <windowsAuthentication enabled="true" />
        </authentication>
14
MacGyver

Apparemment, Microsoft conserve un historique de ces fichiers dans:

C:\inetpub\history\
49
MacGyver

Si vous voulez seulement modifier le fichier applicationHost.config actuellement actif, consultez cet article:

Modification de Applicationhost.config sur Win2008 64 bits

Comme le dit l'article, pour une raison quelconque, applicationHost.config est visible uniquement à l'aide de l'Explorateur (ce qui explique pourquoi je ne voyais pas le fichier de mon gestionnaire de fichiers personnalisé) et vous pouvez le modifier sans problème en utilisant le Bloc-notes (à nouveau, tout autre éditeur et Je vais avoir des problèmes).

1
kape123

Faites une sauvegarde de tous les fichiers de configuration d'abord!

Donc, apparemment, IIS conserve un historique des fichiers de configuration dans C:\inetpub\history. Vous devez donc vous rappeler de la dernière date connue IIS, puis copier le contenu du fichier de configuration à partir de c:\inetpub\history et remplacer les fichiers de configuration dans c:\windows\system32\inetsrv\config.

Bonne chance!

0
e-man

Le dossier d’historique inetpub a sauvé mes fesses. J'ai simplement restauré les deux fichiers du dossier racine et résolu le problème de wallah.

0
Michael Birnholz