问题标签 [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.
iis - IIS 配置之谜——不断从某些默认配置文件重置?
我有一个带有三个网站的 IIS 安装。我正在使用 Zend PHP——每个站点都被定向到它自己的 PHP.ini 文件。我的问题是——每当我进入 IIS 进行更改,或重新启动 IIS、服务器,或完全弄乱任何配置设置时,IIS 都会将我的更改保存到:
C:\Windows\System32\inetsrv\config\applicationHost.config 文件。
...但随后它正在拉取较早的配置,而 IIS 将其引用为配置。这会炸毁站点,告诉我每个站点都在尝试使用相同的配置并给出 IIS 错误。我发现它覆盖所有内容的这个文件位于 C:\InetPub\Temp\appPools[somename].tmp
此文件已锁定——我可以在文本编辑器中查看它,但无法对其进行更改。它获取此文件中的配置,然后将其推送到另一个文件夹:
C:\InetPub\Temp\appPools[SiteFolder][site].config
我可以从 applicationHost.config 中获取配置,并将其推入 site.config,它可以解决我的问题——但只有在进行下一次更改之前……然后该文件再次被覆盖。我有许多其他服务器都设置了这样的站点,并且在 IIS 中所做的任何更改都将写入 applicationHost.config 并由 IIS 正确引用。
在 IIS 中,如果我查看“CONFIGURATION:SEARCH CONFIGURATION”,我会打开 applicationHost.config 文件,它会显示此“默认配置”,并且路径显示:
C:\Windows\System32\inetsrv\config\applicationHost.config
但它在 IIS 中显示的内容实际上与该文件中的实际内容并不匹配。如果没有,那么一切都会奏效。我敢肯定这很令人困惑——但如果有人能帮助我朝着正确的方向前进,我将非常感激:)
c# - RequestFilter Validation 客户端是否依赖?
我应该期望通过实例化引用服务时触发请求过滤器验证(例如FluentValidation )吗?AppHostBase.ResolveService<>
到目前为止,我仅在使用类型化客户端(特别是在本例中为JsonServiceClient )时才成功收到对 C# 应用程序的正确错误响应。
visual-studio - 如何防止 Visual Studio 在 applicationhost.config 中修改 IIS Express 站点的物理路径?
我有一个 Visual Studio Web 应用程序项目,由于某些原因,它将文件从多个项目复制到单独的输出目录。我想将此输出目录用作关联 IIS Express 站点的根目录。在 IIS Express 的 applicationhost.config 文件中,我可以将关联站点的物理路径设置为正确的目录。我会这样设置:
但是,当我重新打开项目时,Visual Studio 会覆盖我指定的物理路径,将其恢复到项目自己的目录。更糟糕的是,Visual Studio 没有给我任何迹象表明它已经这样做了。以下是<virtualDirectory>
Visual Studio 搞砸后元素的外观:
如何防止 Visual Studio 覆盖此路径?
iis - 如何将我的 Web API 应用程序设置为在网络上可用?
我可以通过以下方式从浏览器或其他应用程序(例如 Windows 窗体应用程序)连接到我的 Web API 应用程序:
...但是我怎样才能让其他人(在同一网络上)可以使用 localhost,以便他们可以进行这些相同的 REST 调用?
是否只是他们连接到我的机器的问题,如下所示:
...如果是这样,我该怎么做才能使其可访问(如果有的话)?
无论如何,我真的不想一直在我的机器上运行我的 Web API 应用程序,所以:如何设置它以便它可以 24/7 全天候运行而无需我启动/照看它?
Azure 网站会是一个有效的选择吗?
更新
可能是(根据我在这里读到的)改变 applicationhost.config :
...对此:
...将使其可用(但是,我必须运行它,还是 IISExpress 在后台启动它?)
据推测,第一个条目可能已经使其可用。我不知道前面的 * 是否是必要的,所以我有一个有和没有它的条目。
asp.net - Visual Studio 在applicationhost.config 中为virutalDirectory 放置了错误的路径?
我最近将“我的文档”文件夹从 C: 移动到 D: 驱动器。这似乎破坏了我在 Visual Studio 中调试 Web 应用程序的能力。我假设visual studio在applicationhost.config中创建了如下条目,我想知道根virtualDirectory的第一个physicalPath来自哪里,因为我相当确定这是问题所在(我已经确认VS打开解决方案时创建如下条目):
当我尝试在调试器中运行该应用程序时,浏览器会弹出一个错误,其相关位如下。请注意,web.config 的路径仍然使用 C:,即使它似乎知道跟踪日志文件的正确位置:
所以问题是在 Visual Studio(或 IIS)中确定 web.config 文件的路径,以及如何更改它。和/或是否有任何其他人可以提供关于我为什么会收到此 500.19 错误的其他原因或见解?
最近的另一个变化(除了移动我的文档)是我卸载了 VS Ultimate 2013 的试用版并安装了 VS Pro 2013——这可能会导致这种情况吗?在我最后一次能够正常调试应用程序和收到此错误之间,这两项更改都已进行。
webforms - HTTP 错误 500.19 和 Web 项目属性窗口托管管道 Mod 缺失
我有这个 Web 项目,它开始抛出错误(HTTP 错误 500.19 - 内部服务器错误),当我检查 View->Properties 窗口时。我发现缺少该选项(托管管道模式)。
此应用程序在 IIS7 中配置
为了解决这个错误,我已经授予用户帐户完全控制权(IUSR、ASPNET)
欢迎任何建议!
感谢和问候,
asp.net-web-api - 为什么服务可用时会出现“503 - 服务不可用”错误?
据此, 503错误为“503 Service Unavailable 服务器当前不可用(因为超载或停机维护)。一般这是暂时的状态。”
然而,对我来说似乎并非如此。我有一个 Web API 服务器应用程序正在运行,它公开了一个 REST 方法。我可以从 Fiddler Composer 成功调用它(它接收文件并将其保存到磁盘),但前提是我使用“localhost”(IP 地址不起作用,主机名也不起作用)。
当试图从我的 Windows CE / Compact Framework 手持设备(不能使用“localhost”,因为那会自恋和鲁莽)调用该方法时,我可能会收到错误 400 - 服务器的错误请求或 503 错误,具体取决于关于我是使用运行 Web API 应用程序的 PC 的 IP 地址还是主机名。
使用我的 applicationhost.config 文件,如下所示:
...当我尝试使用以下 URL 从手持客户端调用 HHS.WEB 上的 REST 方法时,我得到 err 400 - Bad Request:http://192.168.125.50:21608/api/inventory/sendXML/duckbilled/platypus/bla
使用如下 applicationhost.config 文件:
...还有这个 uri,使用我的主机名:http://shannon2:21608/api/inventory/sendXML/duckbilled/platypus/bla
...我收到“503”错误。服务器正在运行,当我更改 applicationhost.config 中的条目和我调用的 URL 时可以看到;那为什么它告诉我它不可用?
更新
我希望我有一个头脑风暴,并且使用“PPP_PEER”来指定 PC 可以解决问题,所以我更改了手持设备上的应用程序调用的 URL:
http://192.168.125.50:21608/api/inventory/sendXML/duckbilled/platypus/bla
...对此:
http://PPP_PEER:21608/api/inventory/sendXML/duckbilled/platypus/bla
...因为这似乎是手持设备必须引用 PC 的方式,但这只会让我回到“400 - 错误请求”错误消息(并且服务器应用程序中的断点仍未命中)。如果使用“PPP_PEER”是正确的想法,我还需要什么让它工作?
更新 2
饼干的关键是在命令提示符下添加以下内容:
...或这个:
有关详细信息,请参阅此处的更新 5
internet-explorer - 如何解决 HTTP“404”和“405”错误消息?
在“400”错误之后,HHTP“404”和“405”错误是朝着正确方向迈出的一步吗?
更改我的 applicationhost.config 文件后,根据本文中的第 3 步,从此:
...对此:
...并在此 rigamarole 之后重新启动 IIS Express(上面引用的同一篇文章中的第 4 步):
....我在运行 may 应用程序时得到了一个不同但更常见的问题,而不是我之前的错误(“400 - 错误请求”):“404 - 未找到”
但是,如果我在手持设备上的 IE 中输入 URL 并运行它,我会得到“405 - 资源不允许”
有谁知道如何解决这个困境/任何人都可以看到我在这里所做的事情有问题吗?
更新
至于从 PC (Chrome) 浏览器测试各种 URL,以下是我尝试的方法及其结果:
http错误503服务不可用。
更新 2
尝试从手持设备通过 (IE) 浏览器访问资源:
在 URL 中使用127.0.0.1会导致浏览器响应“找不到服务器或 DNS 错误”
使用192.168.125.50(我的 PC 的 IP 地址)响应“ HTTP 405 - 找不到资源”
更新 3
在答案(此处)中引用的 Gretelman 帖子中,它说要这样做:
...从命令提示符;就我而言,这将是:
但这不是只开放访问端口 80 的尝试吗?我需要访问 REST Web API 方法期望的端口,即 21608...
我应该这样做:
?
更新 4
我可以在命令提示符处执行以下操作而没有错误:
它显示为在 IIS Express 中运行——实际上,HSS.Web 在运行该命令之前已启动(我可以通过右键单击 IIS Express 任务栏图标并选择“显示所有应用程序”来查看)以及 HHS.API ,但我运行它以查看它是否会返回任何错误消息,根据这里的建议
更新 5
特别是作为更新 3 的后续行动,它是这样的:
...或这个:
...成功了——我现在终于能够在运行这些命令后从手持设备上命中服务器上的断点(使用我的机器的主机名向大众开放端口 80 和 8080)。哪个是必要的,或者他们是否都是,我不知道。我已经添加了“21608”和“21609”的命令,所以它们不是解决方案:
iis - 任何东西都会在 Windows Server 2008 R2 上使用 64 位 applicationHost.config 吗?
任何东西都会在 Windows Server 2008 R2 上使用 64 位 applicationHost.config 吗?由于 w3wp 是 32 位的,那么 64 位文件是否重要?我应该竭尽全力确保它们保持同步吗?
asp.net - IIS 8:自定义应用程序池 ID:值不在预期范围内
我有一对 IIS 8 机器,它们都具有相同的应用程序主机,都具有完全相同的机器密钥。在其中一个上,当我尝试为我的应用程序池 ID 使用自定义帐户时,一切正常。另一方面,当我尝试执行此操作时,我关闭对话框以输入密码,将我留在高级设置对话框中。当我关闭它时,我收到一条错误消息,指出“值不在预期范围内”。
我在这里尝试了我能想到的一切:我已经将应用程序主机从工作机器复制并粘贴到非工作机器。导出和导入的机器密钥。看着我能想到的每一个配置,并用锤子敲打它——一切都无济于事。
如果有人知道可能发生了什么或我可以采取哪些进一步的步骤来尝试诊断这一点,我将不胜感激。
谢谢!