我在IIS中遇到超时问题.在web.config中,会话超时设置为60分钟,但在20分钟后会话结束.
此问题仅发生在IIS7中而不是IIS5中.
经过一番调查,我发现这是由于应用程序池的超时.如果应用程序池在没有执行任何操作的情况下保留20分钟,则IIS将结束会话.
如果应用程序使用defaultAppPool,则总会发生这种情况,但如果我将App Pool更改为经典的.NET App Pool,则不会发生超时.
两种模式都有空闲超时,但仅在DefaultAppPool中发生这种情况.
这个问题一直困扰着我......
在本地Intranet环境中,如果我们想要使用模拟我们的Windows域用户,我们注定要在我们的应用程序池中使用"经典"管道模式,或者是否有一种新的方式来声明性地"运行"它们(可以这么说) )?
我的目标是在我的Intranet上对本地Web应用程序使用Windows身份验证,以便用户可以在其活动目录帐户下进行身份验证和运行应用程序(原则).每次我尝试这个(当然使用NetworkService身份),我都会收到此错误:

谢谢!;)
impersonation windows-authentication integrated-pipeline-mode iis-7.5 windows-server-2008-r2
我有一个部署在带有IIS 8.5的Windows 2012 R2服务器上的MVC4 Web应用程序.我将应用程序池配置为使用自定义域帐户运行,因为Web应用程序需要在启用Windows身份验证的情况下调用网络上的另一个Web服务.
当我尝试从浏览器访问该页面时,我的.css,.js文件会出现很多"错误500".当我尝试直接浏览其中一个文件时,我显示"HTTP错误500.0 - 内部服务器错误"页面而不是脚本或CSS的内容.我尝试使用一个简单的.txt文件,我得到了同样的错误.
详细错误信息:
在服务器上,我为整个C:\ inetpub\wwwroot\aaa文件夹和子文件夹的"Everyone"提供了完全NTFS权限.
我让帐户运行本地"管理员"组的应用程序池部分.它没有改变任何东西,我仍然得到相同的错误消息.
但是,如果我使用localhost直接从服务器打开网页,一切正常.
所以我在这里没有想法.有什么建议 ?
谢谢 !
application-pool staticfilehandler internal-server-error asp.net-mvc-4
当我请求PUT或DELETE时,我的ASP.NET WebAPI和MVC应用程序返回404错误.它曾经返回405,但我通过启用CORS解决了这个问题.我尝试了各种不同的解决方案(禁用WebDAV,更改路由,在请求中放置查询字符串),但似乎没有一个对我有用.我希望我错过了一些非常简单的东西.以下是我的应用程序中每个相关文件的相关简化代码:
jQuery AJAX请求:
$.ajax({
url: "api/Signout?id=3",
type: "DELETE",
crossDomain: true,
});
Run Code Online (Sandbox Code Playgroud)
SignoutController(GET和POST方法在这里工作得很好):
public void Delete([FromUri] int id)
{
//Do things
}
Run Code Online (Sandbox Code Playgroud)
WebApiConfig路线:
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
//For another part of the application
config.Routes.MapHttpRoute(
name: "SaveSignout",
routeTemplate: "api/{controller}/{signout}"
);
Run Code Online (Sandbox Code Playgroud)
Web.config文件:
<system.webServer>
<httpProtocol>
<customHeaders>
<clear />
<add name="Access-Control-Allow-Origin" value="*" />
<add name="Access-Control-Allow-Headers" value="Origin, X-Requested-With, Content-Type, Accept" />
<add name="Access-Control-Allow-Methods" value="GET, POST, PUT, DELETE, OPTIONS" />
</customHeaders>
</httpProtocol>
<modules>
<remove name="FormsAuthenticationModule" />
<remove …Run Code Online (Sandbox Code Playgroud) 我需要理解以下陈述
声明 - 1
最常见的处理程序是处理.aspx文件的ASP.NET页面处理程序.当用户请求.aspx文件时,页面通过页面处理程序处理请求.
声明 - 2
例如,您可以编写自己的图像来从数据库而不是从Web服务器本身提供图像等,或编写简单的POX服务(而不是SOAP/WCF /等)
声明 - 3
ProcessRequest在Page Life Cycle中的重要性是什么?
可能重复:
IIS7中经典和集成有什么区别?
我总是想知道使用两者的区别,优点/缺点是什么.
我们的一位用户在我们的网络应用程序中收到错误.我们无法复制这个问题,我怀疑它与网络有关.我让用户在他们的办公室和家中使用他们的笔记本试用应用程序,并确认问题只发生在他们的办公室.
我登录服务器并在他们办公室试用后立即查看了事件查看器,并在日志中显示以下警告.
我对如何开始追踪这个问题感到茫然.有什么建议?
事件查看器日志如下:
事件代码:3005事件消息:发生了未处理的异常.活动时间:6/20/2012 6:32:45 PM活动时间(UTC):6/20/2012 10:32:45 PM活动编号:ebf8f628a9b3457cbea117c8c2da2186活动顺序:2970活动结果:26活动详情代码:0申请信息:
Run Code Online (Sandbox Code Playgroud)Application domain: /LM/W3SVC/50/ROOT-1-129847041933281152 Trust level: Full Application Virtual Path: / Application Path: c:\websites\foobar.acme.com\ Machine name: MyServer Process information: Process ID: 15152 Process name: w3wp.exe Account name: NT AUTHORITY\NETWORK SERVICE Exception information: Exception type: HttpException Exception message: Server cannot set content type after HTTP headers have been sent. Request information: Request URL: http://foobar.acme.com/Project/Evaluate/ResultsXML.aspx?step=89&uid=4397&rnd=hhf8oe Request path: /Project/Evaluate/ResultsXML.aspx User host address: 192.168.102.1 User: Is authenticated: False Authentication Type: Thread account name: NT AUTHORITY\NETWORK SERVICE …
在浏览虚拟主机/网站设置面板时,我遇到了这个

我什么时候会选择管道选项而不是非管道选项?
我HttpContext.Current.RewritePath(...)在Global.asax中使用URL重写(),因此物理文件大多不存在.一切都工作正常,直到我不得不从IIS(8.5)中删除网站并再次添加它.
现在我发现每个请求都找不到404.示例http://localhost/site/article123
和Global.asax Application_BeginRequest事件甚至没有触发.
但是,如果我将在文件夹中添加空的default.aspx文件,/site/article123一切正常,URL正确地重写.
文件没有改变,所以它应该是IIS配置的问题.
我在web.config中有以下内容:
<modules runAllManagedModulesForAllRequests="true">
IIS中的项目设置为应用程序池.NET v2.0 Classic的应用程序
编辑:
IIS 8.0中的相同故事
我通过实现IHttpModule接口编写了一个自定义HTTPModule.然后我在web.config文件中注册了它
<configuration>
<system.web>
<httpModules >
<add name="AuthHttpModule" type="AuthHttpModule" />
</httpModules>
</system.web>
</configuration>
Run Code Online (Sandbox Code Playgroud)
但是当我尝试访问任何页面时,它会抛出错误
检测到的ASP.NET设置不适用于集成管理管道模式.
注意:我正在使用VS2012和C#.
我有一个网站的本地副本,我知道它有一个有效的web.config文件,它在生产和VIsual Studio 2013中运行.它运行在.net 4.0版本上.我得到了可怕的"HTTP错误500.19 - 内部服务器错误".错误页面的配置源部分中有奇怪的信息:
配置来源
-1: 0:
任何人以前都看过这个,并有任何想法如何解决它?应用程序池设置正确,我检查了该文件夹的权限,并添加了具有完整权限的Everyone.
谢谢!
asp.net ×7
iis-7 ×4
iis ×3
c# ×2
iis-7.5 ×2
.net ×1
asp.net-mvc ×1
global-asax ×1
http ×1
httphandler ×1
httpmodule ×1
security ×1
web-hosting ×1
webforms ×1