Je reçois le message d'erreur suivant:
Le terme 'appcmd' n'est pas reconnu comme le nom d'une applet de commande, d'une fonction, d'un fichier de script ou d'un programme utilisable. Vérifiez l'orthographe du nom ou, si un chemin a été inclus, vérifiez que le chemin est correct et réessayez. À la ligne: 1 caractère: 7
Appcmd.exe
existe à l'emplacement %systemroot%\system32\inetsrv\
. Vous devez soit modifier votre variable PATH pour ajouter le chemin %systemroot%\system32\inetsrv\
comme
SET PATH=%PATH%;%systemroot%\system32\inetsrv\
ou vous pouvez utiliser Set-Location
pour aller d’abord à l’emplacement de Appcmd.exe
comme
Set-Location %systemroot%\system32\inetsrv\
et ensuite exécutez votre commande.
Je pense que l'utilisateur a le même problème que j'ai:% systemroot%\system32\inetsrv\était vide sur ma machine.
Vous devez "Activer et désactiver les fonctionnalités Windows", puis sélectionner "Scripts et outils de gestion IIS" sous "Services Internet (IIS)" -> "Outils de gestion Web".
Le problème ne concerne pas uniquement le chemin du fichier.
Suggestion [3, Général]: La commande appcmd est introuvable, mais existe à l'emplacement actuel. Windows PowerShell ne charge pas les commandes à partir de l'emplacement actuel par défaut. Si vous faites confiance à cette commande, tapez plutôt ".\Appcmd". Voir "get-help about_Command_Precedence" pour plus de détails.
Alors s'il vous plaît courez comme suit:
.\appcmd set config -section:system.applicationHost/sites /+"[name='Default Web Site'].bindings.[protocol='https',bindingInformation='*:443:']" /commit:apphost
J'ai eu le même problème et l'ai résolu en procédant comme suit:
$systemRoot = [environment]::GetEnvironmentVariable("systemroot")
Set-Location $systemRoot\system32\inetsrv
.\appcmd
Pour afficher vos chemins d’environnement actuels:
$Env:Path
Pour ajouter le chemin APPCMD:
$Env:Path += ";C:\Windows\System32\inetsrv\"
Cela devrait vous permettre d’utiliser votre commande APPCMD, par exemple:
Appcmd Set Config /Section:RequestFiltering /AllowHighBitCharacters:True