Kle*_*lee 7 powershell iis-7.5 web-administration
我正在进入一个PowerShell用于编写脚本的项目.构建使用该WebAdministration模块来管理本地IIS实例.当我运行构建脚本时,尝试导入时会引发以下错误WebAdministration.
错误:06/29/2016 17:28:35:在C:\ dev\src \nib-ravendb\build\ConfigureIis.ps1:10 char:1 + Import-Module WebAdministration + ~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~ [<< == >>]例外:未加载指定的模块"WebAdministration",因为没有有效的模块文件任何模块目录.错误:1
然而,当我Import-Module WebAdministration在PowerShell命令行运行时,模块被导入,我可以使用它的功能.随后运行构建脚本仍然失败.
我有IIS 7.5和PowerShell 4
有没有人知道为什么这个导入会在脚本中失败而在命令行失败,以及如何修复它?
Ric*_*ard 13
对于服务器需要安装的作用Management Tools下Web Server (IIS)使用WebAdministration模块.要查看您是否有可用的模块Get-Module -ListAvailable.
为了Windows 7给10您需要安装该功能IIS Management Scripts and tools下Internet Information Services>> Web Management Tools.
您可以尝试手动定位WebAdministration.psd1文件,然后导入它.使用$env:psmodulepath帮助寻找您的模块都保存然后运行:
Import-Module -Name 'C:\Windows\System32\WindowsPowerShell\v1.0\Modules\WebAdministration\WebAdministration.psd1'
Run Code Online (Sandbox Code Playgroud)
如果Server 2008您可以尝试以下方法,但这可能不适用于2012年及以上:
Add-PSSnapin WebAdministration
Run Code Online (Sandbox Code Playgroud)
注意您需要运行具有管理员权限的脚本才能WebAdministration使用Import-Module或加载模块Add-PSSnapin.
还要检查您PowerShell的执行策略是否设置为Unrestricted:
Set-ExecutionPolicy unrestricted
Run Code Online (Sandbox Code Playgroud)
您可能希望看到此问题.
小智 8
我遇到了同样的情况,我已经修复了它,在 W2016 服务器上安装 Windows 功能 Web 脚本工具:
Add-WindowsFeature Web-Scripting-Tools
Run Code Online (Sandbox Code Playgroud)
最后出现了一个问题,某个东西(可能是巧克力味的?)被截断$env:PSModulePath到第一个条目,这就是为什么如果我输入它但不在脚本中则脚本可以工作的原因。
$env:PSModulePath我通过在我运行的脚本中的不同点进行记录来找到它。
我通过重新排序 中的条目来解决这个问题$env:PSModulePath。
看看@Richard 的回答,了解其他一些好的建议。
| 归档时间: |
|
| 查看次数: |
19781 次 |
| 最近记录: |