问题标签 [web-administration]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
powershell - 如何使用 powershell 设置 IIS 的表单身份验证(system.web/authentication)的 overrideMode?
我需要使用 powershell 自动配置新的 IIS 服务器,并且需要更改表单身份验证功能的功能委派设置(其 overrideMode)。
我基本上希望更改使用此命令时看到的 overrideMode:
我可以使用 Set-WebConfiguration 为其他类型的身份验证方法设置它,例如我会做的 Windows 身份验证:
但由于某种原因,我不能对 //system.web/authentication 做同样的事情,我不明白为什么。当我尝试时,我收到此错误:
我做错了什么,如何更改此值?还有一些其他的委托功能似乎也相同。
这适用于 Windows Server 2016 上的 IIS 10
编辑:我注意到,当我使用 IIS 管理器(而不是 Powershell)将委派设置更改为只读时,它通过将其添加到 applicationHost.config 文件中具有 overrideMode="Deny" 的位置来“锁定”该功能。完成此操作后,如果我尝试将其更改回允许使用 Powershell,则会收到错误消息。这就是问题。如果我只使用 powershell 将其设置为允许或拒绝,它不会给出错误,但更改不会反映在 IIS 管理器中。似乎对于某些委派权限,IIS 管理器使用与 Powershell 更改 overrideMode 不同的方法,一旦使用 UI 锁定它,就无法使用 Powershell 解锁它。
powershell - Get-IISAppPool 在 VSCode 中返回的结果少于实际数字
我的本地计算机 Windows 10 Enterprise 中有 80 个应用程序池。Powershell ISE 中的 Get-IISAppPool 返回 80 个池。Visual Studio Code 中的 Get-IISAppPool 仅返回 5 个池。回收 IIS 不会改变结果。
但是,在 VSCode 的 Powershell Integrated Shell 中,PS IIS:\AppPools> dir 返回 80 个应用程序池
编辑:从 VSCode 以不同的方式完成,返回预期的 80。
我在https://docs.microsoft.com/en-us/powershell/module/iisadministration/get-iisapppool?view=win10-ps上没有看到任何内容,表明我应该何时收到部分结果集,所以在哪个方向我应该排除故障吗?
powershell - Powershell 错误:散列文字中的键后缺少“=”运算符
我需要创建一个脚本来检查特定站点的 IIS 应用程序池及其子应用程序池是否已启动。(我有一个单独的脚本来启动“停止”的应用程序池,因为我只想检查它们是否已停止)我能够创建脚本但是当我修改它以更好地格式化输出时,我不断收到此错误,
我检查了这里和微软,但是当我第一次看到它时,我对这个错误更加困惑。我看到了这个Missing closing '}' in statement block.
,所以我以为我实际上错过了一个,但我检查了一下,我没有。我不确定这是否是间距/缩进问题,但我对此错误消息知之甚少。下面是我的脚本。
c# - 如何使用 IIS GetWebConfiguration 获取 .NET Cores 配置?
我正在创建一个 .NET Core 2.1 Web API 项目(带有 Angular 7 前端),我使用 Microsoft.Web.Administration API 从远程 IIS Web 服务器(主要列出网站、应用程序、应用程序池)中提取信息, ETC。):
https://docs.microsoft.com/en-us/dotnet/api/microsoft.web.administration?view=iis-dotnet
作为一个快速说明,这里是我如何实例化一个远程 IIS 服务器对象,一个ServerManager
对象:
为了创建ServerManager
对象(可以说是 IIS“容器”对象),我使用了一个隐藏的构造函数,我将远程 IIS 服务器的applicationHost.config
文件路径传递给它(位于C:\Windows\System32\inetsrv\config
默认位置)。我这样做是因为我在使用该ServerManager.OpenRemote(string server_ip)
方法时收到与 COM 相关的问题。
无论如何,每当我尝试使用 ServerManager、Site 和 Application 的GetWebConfiguration
方法来获取Web.config
每个 IIS 对象的文件时,上述每个对象的GetWebConfig
方法都会失败。当我运行我的代码时,该应用程序不会崩溃,但在调试器中检查对象时,会列出以下错误:
看起来GetWebConfiguration
代码正在一个不存在的目录中寻找站点/应用程序的web.config
文件。调试器显示ConfigurationPathToEdit
equals "MACHINE/WEBROOT/APPHOST/my_site"
。它正在查找文件所在的目录applicationHost.Config
(全局 IIS 设置文件位置)。但是,我的网站和应用程序的web.config
文件存储在D:\ drive
at下D:\MyCompany
。有没有办法让这些GetWebConfiguration
方法查看配置文件的默认目录以外的applicationHost.Config
目录?
抱歉,如果这有点令人困惑。感谢您的帮助,如果有不清楚的地方,请告诉我。谢谢你。
powershell - 如何更正我的 PowerShell 脚本/WebAdministration foreach 循环的 Write-Host 结果?
我想将 4 个 foreach 循环结果显示为:
代替:
代码:
实际结果:
我希望结果显示如下:
powershell - WebCommitDelay 和 IISCommitDelay 的区别
WebCommitDelay 和 IISCommitDelay 有什么区别?
MS docs对两者都说同样的话:
Instructs the IIS configuration system to delay the commitment of changes.
那么我应该更喜欢什么,为什么?看起来它们确实有一些差异,因为如果我使用 WebCommitDelay,New-WebApplication ... -Force
如果存在相同的应用程序,我将无法使用,但如果我使用 IISCommitDelay,我可以这样做。
powershell - 如何使用 Powershell 在 IIS 10 上更新站点的“物理路径”?
创建站点时,我设法使用以下代码行设置路径
我试图弄清楚如何更新路径,通过配置编辑器找不到任何东西。我以为我有以下命令
...但是,我要更新的不是虚拟目录,而是实际站点...
python - 如果不存在权限,则使 Django REST 端点不可访问
目前我正在使用 Django 创建一个 webbackend,其中管理是使用 KeyCloak 完成的。
使用 KeyCloak,我可以为用户分配特定角色(例如客户、订阅客户)。
客户和订阅客户具有不同的权限。(例如在电影行业,只有订阅客户可以观看所有电影而普通客户不能观看)每部电影都有一个端点。
如何在缺少权限的情况下使此端点无法访问?
powershell - 如何快速删除 PowerShell 中的多个 IIS 绑定?
在版本升级过程中,我们当前的解决方案从一个站点获取所有绑定(两个虚拟 url 除外)并将它们设置在另一个站点上。
我目前正在通过 PowerShell 删除绑定,但速度非常慢。我查看了 SO 中的每个线程,几乎每个解决方案都使用“Remove-WebBinding”。
这是我当前的代码:
我有 272 个(-2 虚拟)绑定要删除,大约需要 3 分钟。
任何想法如何更快地做到这一点?
顺便说一句:一个一个地添加所有这些绑定也非常慢,但我想如果我能在这里找到答案,类似的解决方案也可以添加。
powershell - 尝试通过 powershell 更改 IIS 站点配置时出现 FileLoad 异常
我正在尝试设置一个安装 PS 脚本来处理两个应用程序池/站点的安装和配置。正确处理了创建,并且可以很好地调整 32 位应用程序属性,但是一旦我尝试启用父路径,就会遇到以下错误:
System.IO.FileLoadException:此配置部分不能在此路径中使用。当该部分锁定在父级别时会发生这种情况。锁定是默认情况下 (overrideModeDefault="Deny") 或由具有 overrideMode="Deny" 或旧 allowOverride="false" 的位置标记显式设置的。
我的代码如下 - 假设所有变量都在其他地方初始化。我尝试添加 -Location 规范,但无济于事。我还尝试在模块前面将 applicationHost.config 设置更改为“允许”。
编辑:明白了。见答案。