有什么办法可以configurationIIS 7.5来执行URL重写到同一站点上的不同应用程序池,而不会遇到403.18错误? 我们在IIS 6上使用Helicon ISAPI Rewrite 3,它像一个魅力。 根级“应用程序”在它自己的应用程序池下运行,在IIS 6上,我们没有任何问题从该应用程序池进行URL重写到其他四个应用程序池中的任何一个。 但是,当我将相同的服务器configuration信息复制到IIS 7.5时,URL将重写为任何其他应用程序池失败并出现“403.18 – 禁止”错误。 奇怪的是,在IIS 5模拟模式下运行的IIS 6并不是(至less据我所知,通过查看站点服务configuration对话框),所以重写不会抛出403.18错误。 所以有些东西肯定是不一样的,但是无论如何,我一定还没弄明白。 顺便说一下,我们没有结婚Helicon ISAPI重写。 如果还有另外一种方法来使用另一个模块或方法来保存我们当前的重写configuration规则,那么我将非常乐意使用它。
我正在使用Windows Server 2008 R2只托pipe一个应用程序(asp.net mvc3)。 初始页面加载第一次真的很慢。 在我的应用程序池回收设置中,只检查“常规时间间隔”(分钟),并将值设置为1740.如果我理解正确,我的应用程序池将每29小时回收一次。 然而,我注意到有时几个小时后,我回到我的网站,页面加载速度再次缓慢。 应用程序池似乎被回收。 这是开发服务器,根本没有stream量。 这是因为没有交通,所以它会自行回收,即使时间间隔设置为29小时?
在Small Business Server 2011安装中,整个w3wp.exe进程似乎在使用不成比例的大量内存。 SBS开箱即用安装共有7个站点和20个ASP.NET应用程序池(Sharepoint,Exchange,WSUS和SBS特定的东西,如Remote Web Workplace)。 由此产生的十三个w3wp.exe进程往往耗费超过4 GB的服务器的内存随着时间的推移,高峰应用程序池是属于WSUS,在工作集约800 MB的。 通过IIS MMC手动回收应用程序池有助于暂时减less内存使用量(w3wp.exe进程缩减至10 MB,其中一些快速重新生成),但显然不是pipe理员想要整天执行的操作。 我无法find有关SBS预装的应用程序池自动回收的任何build议,所以我不太愿意在生产系统上“只是这样做”。 我在网上关于如何限制这个问题的研究只是抛出了一些post,指出w3wp的内存消耗不会伤害,但是会提高性能,因为内存将在“其他应用程序需要时释放”。 麻烦的是,它不工作: 一个是SBS是一个多angular色服务器,其中一个angular色(主要angular色)是CIFSnetworking存储,它极大地受益于文件系统caching,而文件系统caching又依赖于“免费”的内存,如“任何其他进程方式“ – 几乎没有看到用户和进食记忆的ASP.NET应用程序池是适得其反的 另一件事情是,我仍然不得不在内存不足的情况下看到w3wp实例内存消耗的大幅下降 – 我所看到的是一个小幅下降,远远低于100 MB,而过度交换,反过来又损害了性能 我很lesspipe理IIS或ASP.NET应用程序,因此有关如何有效减less应用程序池的内存需求的任何想法都是受欢迎的。
在过去的两周里,我们每晚的IISReset都没有成功恢复,导致我们停机。 我们有一个每天晚上运行IISReset的Windows任务,我想知道这是否甚至是必要的了? 我应该看看应用程序池中的function重新启动自己吗?
如何将活动目录权限分配给默认应用程序池标识[IIS APPPOOL {应用程序池名称}]? 我试图做到这一点,使Web应用程序查询活动目录组,用户和检查特定用户名或组名的存在。 谢谢。
在IIS 5.0中,默认情况下应用程序池的标识帐户是ASPNET,除非启用模拟,否则网站将在其应用程序池标识的帐户下运行。 但在IIS 7.0中,有两个地方可以configuration我的网站将使用的帐户。 在应用程序池级别和网站级别。 我期望网站的身份覆盖应用程序池的身份,但我刚刚看到,情况并非如此。 那么,有什么区别?
在这个问题的脉络。 其他的问题也涉及到这个问题,但是让我们得到一个完整的答案: 具有域用户作为应用程序池标识的通用IIS 7站点需要哪些特定权限? 具有域用户作为应用程序池标识的ASP.NET IIS 7站点需要哪些特定权限? 是否有任何技巧/快捷方式来应用这些权限?
我有一个小的ASP.NETtesting脚本,用于打开域中另一台计算机上的SQL Server数据库的连接。 这不是在所有情况下工作。 build立: W2K8R2下的IIS 7.5尝试连接到远程SQL Server 2008 R2实例。 所有的机器都在同一个域中。 对于Web站点使用ApplicationPoolIdentity,无法使用以下方式连接到SQL Server: 用户'NT AUTHORITY \ ANONYMOUS LOGON'login失败。 说明:执行当前Web请求期间发生未处理的exception。 请查看堆栈跟踪,了解有关错误的更多信息以及源代码的来源。 exception详细信息:System.Data.SqlClient.SqlException:用户'NT AUTHORITY \ ANONYMOUS LOGON'login失败。 但是,如果我将过程模型标识切换到NETWORK SERVICE或我的域帐户,则数据库连接成功。 我已经在SQL Server中授予\ $访问权限。 我没有在网站上进行任何authentication,只是一个简单的脚本来打开一个连接到数据库,以确保它的工作。 我启用了匿名身份validation并将其设置为使用应用程序池标识。 我该如何做这项工作? 为什么ApplicationPoolIdentity尝试使用ANONYMOUS LOGON? 更好的是,如何使其停止使用匿名login?
我一直在阅读Scott Guthrie关于Auto-Start ASP.NET应用程序的文章 ,该文章提供了关于如何设置ASP.NET 4.0应用程序以自动启动的示例。 <applicationPools> <add name="MyAppWorkerProcess" managedRuntimeVersion="v4.0" startMode="AlwaysRunning" /> </applicationPools> <!–…–> <sites> <site name="MySite" id="1"> <application path="/" serviceAutoStartEnabled="true" serviceAutoStartProvider="PreWarmMyCache" /> </site> </sites> <!–…–> <serviceAutoStartProviders> <add name="PreWarmMyCache" type="PreWarmCache, MyAssembly" /> </serviceAutoStartProviders> 从他的文章中不清楚的是,如果下面的configuration将自动启动一个ASP.NET应用程序: <applicationPools> <add name="MyAppWorkerProcess" managedRuntimeVersion="v4.0" startMode="AlwaysRunning" /> </applicationPools> <!–…–> <sites> <site name="MySite" id="1"> <application path="/" serviceAutoStartEnabled="true" /> </site> </sites> 这里的区别在于没有指定类来启动。 理想情况下,应用程序将被加载。 有关站点应用程序的文档意味着serviceAutoStartEnabled属性需要serviceAutoStartProvider属性才能工作。 但是如果没有提供额外的属性,没有指示会发生什么。 […]
由于我们体系结构的重大更新,我们现在在IIS下有一些未使用的应用程序池(没有映射到它们的网站)。 我明白如何删除它们以提高可读性,但是我的问题更多的是性能影响:这些未使用的应用程序池在内存,CPU,IIS请求处理速度或任何其他性能指标方面是否有问题? 从我所看到的,一个没有网站的应用程序池不会创build一个工作进程,所以我怀疑在性能上没有任何区别,但是我想确保我不会错过任何东西。