问题标签 [applicationhost]
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.
url-rewriting - HTTP 错误 500.19,错误代码 0x8007000d,同时尝试在 IIS 10 中使用“URL 重写”
我尝试<rewrite>
在 web.config 中使用并收到HTTP 错误 500.19错误代码 0x8007000d。
转到 IIS 管理器,找到“URL 重写”图标(这意味着该模块已经安装,我不必再次安装它),但点击它给出了一个通用的“执行此操作时出错”错误。
我选择了哪个网站(或服务器本身)并不重要,单击相应的“URL 重写”图标仍然会给出相同的错误消息。
在某些时候,错误消息开始显示附加细节:“无法读取配置部分'system.webServer/rewrite/globalRules',因为它缺少部分声明”,我不记得更改任何内容,所以我不知道是什么导致它出现,所以这只是一个仅供参考。
我搜索并发现了许多有助于最终解决方案的其他帖子,以下是为我解决它的步骤:
iis - IIS ipSecurity 不阻止外部 IP
我们正在使用 Windows Server 2016 在 IIS 上运行一个网站。我们希望该网站是公共的,但我们希望只有一个内部 IP 地址可以访问一个文件夹。applicationHost.config 包含以下几行:
从 192.168.1.x 之外的 IP 地址访问此文件夹中的页面时,我预计会被阻止,但页面加载成功。
此外,我在 IIS 管理器中收到错误消息。我不确定它是否相关。当我导航到 mywebsite > private 并打开IP 地址和域限制功能时,我看到了与 applicationHost.config 中相同的设置。在Edit Feature Settings下,设置为 Access=Deny,域名限制=disabled,Proxy mode=disabled,Deny action type=Forbidden。当我将访问权限更改为允许时,我收到以下错误消息:
我们在 applicationHost.config 或任何 web.config 文件中没有任何关于dynamicIpSecurity的信息。ipSecurity不在 web.config 中。
关于为什么外部 IP 地址没有被阻止的任何建议?
更新:仍然没有完全修复,但我弄清楚发生了什么,并使用这些信息来实施解决方法。在我们的网络中,我们有 3 个区域:Web 服务器、工作站和互联网。事实证明,如果 Web 请求来自工作站,IP 地址和域限制功能会看到实际的客户端 IP 地址并按预期允许或拒绝。但是,如果请求来自 Internet,则此 IIS 功能会看到我们防火墙设备的接口 IP 地址。这很奇怪,因为 Web 应用程序会看到客户端 IP,而日志文件会记录客户端 IP。它似乎只是 IP 地址和域限制功能。是否可以对 IIS 进行一些操作以使其更有可能查看实际的客户端 IP?
c# - 即使在修改后也无法从 .NET Core 本地服务器提供某些文件扩展名在 applicationHost.config
我正在建立一个网站,但遇到了无法访问/下载某些文件扩展名的问题,例如.py
, .cs
。例如,当我请求获取 .cs 文件时..
userdata
文件夹是文件夹的直接子级wwwroot
。success
是将 blob 转换为文本的函数。对于一个.txt
文件(与 .cs 文件位于同一文件夹中),一切正常,我得到了 .txt 文件包含的确切文本。但是对于一个.cs
文件,我得到了标记文本——我网站的 index.html。奇怪的oh no!
是没有警觉。我尝试使用托管在 github 上的一些随机 .cs 文件,它运行良好。
最初,我得到一个彻底的 404。当我尝试https://localhost:44310/userdata/texts/7/637381399366309280.cs
在浏览器中打开链接 ( ) 时,我得到以下页面:
我做了一些研究,找到了 applicationHost.config 并删除了所有过滤后的扩展,看起来像这样:
现在我不再得到404了。但success(blob)
返回标记文本 - 我网站的 index.html。(我使用 Reactjs,我注意到当 fetch 出现问题时会发生这种情况。)当我尝试在新选项卡中打开 url 时,我不再得到requestFiltering
错误页面。而是加载该站点的主页。
所以我真的很困惑。我没有得到 404,但我似乎也没有得到文件。修改requestFiltering
更改的内容,但似乎我还需要做其他事情。请帮忙。
.net - 突然得到:HTTP 请求未经授权,客户端身份验证方案“协商”
在 dotnet 框架应用程序的调试会话期间,我开始得到:
HTTP 请求未经客户端身份验证方案“协商”的授权。从服务器收到的身份验证标头是 'Negotiate,NTLM,Basic realm=...
在 IIS 上成功启动 Web 项目数小时后。
我的 .vs/{solutionName}/config/applicationhost.config 具有带有协商功能的 Windows 身份验证:
IIS 的设置完全相同:
C:\Program Files (x86)\IIS Express\AppServer\applicationhost.config
可能发生什么导致我突然收到此错误?
我试过清除ie的缓存,但是没有用
编辑:我尝试在本地删除存储库并从远程克隆,但这并没有解决问题,因此在存储库之外必须有一些本地配置导致此问题
asp.net - 如何在站点 web.config 级别禁用 IIS 10 中的 brotli httpCompression?
我在 IIS 10 上运行一个静态网站。
我想httpCompression
在站点级别禁用 brotli 以验证我的站点级别配置是否确实有效,并且无论全局文件httpCompression
如何,我都会在每台机器上获得所需的结果。applicationHost.config
据我了解,通过使用<clear />
我删除所有全局规则并添加我的本地规则以应用于网站。所以,如果我使用<clear />
然后添加<scheme name="gzip" ... />
它意味着网站应该只使用 gzip 压缩。
但实际上,它仍然使用brotli。即使我手动删除缓存(IIS 压缩缓存和浏览器缓存)并重新启动服务器。
这是我的C:\Windows\System32\inetsrv\config\applicationHost.config
:
这是我的Web.config
:
我试过的:
使用
<section name="httpCompression" allowDefinition="Everywhere" overrideModeDefault="Allow" />
使用
在尝试之间运行
net stop was /y && net start w3svc
,以及在 IIS 中单击“重新启动”<scheme name="br" dll="%ProgramFiles%\IIS\IIS Compression\iiszlib.dll" doStaticCompression="false" doDynamicCompression="false"/>
- 明确禁用 brotli用.
<httpCompression>...<httpCompression/>
_<httpCompression />
_applicationHost.config
还尝试<httpCompression />
从applicationHost.config
. 在这两种情况下,都发生了压缩,即使它是在Web.config
文件中配置的。
也许,我的覆盖权限有问题?
另外,如果我从我的- IIS中httpCompression
完全删除部分,它会停止压缩和文件,所以我认为它确实有效。但不知道为什么s 不起作用...是设计使然吗?...Web.config
manifest.webmanifest
.png
<add mimeType="*/*" enabled="true" />
<scheme>
security - 可以在我的网站中覆盖 applicationhost.config 中 http 动词的 RequestFiltering 值吗?
如果 http OPTIONS 已在 applicationhost.config 中配置为 [OPTIONS=false],则在 web.conig 中配置 http [OPTIONS=true] 时,我的网站会发生什么情况?
ApplicationHostFile => 添加 http OPTIONS = false 我的网站级别 web.config => 添加 http OPTIONS = true
哪一个会优先?& 在启动我的网站时会出现任何问题 [服务器错误]?
[例如:如果在 applicationhost.config 中添加 http 响应标头,我们将收到错误消息说“不允许重复”。所以当两个文件具有相同的标头时,我们会收到 RequestFiltering http 动词的任何错误?]
windows - 告诉 appcmd 将配置写入 applicationhost.config 而不是站点的 web.config
据我了解,可以在以下文件中将连接字符串和其他配置对象添加到站点范围 -
- 机器配置
- 应用程序主机配置
- 该网站的 web.config
我正在运行以下命令 -
APPCMD set config "site1" /section:ConnectionStrings /+"[ConnectionString='Data Source=localhost;Integrated Security=SSPI;', Name='Northwind', providerName='System.Data.SqlClient']"
这会在 web.config 文件中添加一个元素。
我想在 applicationHost.config 文件中看到它。
我尝试在 <site> 元素下手动添加它 -
但这不是 applicationHost 的合法语法。
那么如何将 connectionString 添加到 applicationHost ?
谢谢,