Tag: iis

Windows 10 Home / Pro / Enterprise上的IIS并发请求限制

我用SignalR(WebSockets)开发了一个ASP.Net Web应用程序。 我在Windows 10 Home Machine上的IIS上安装了它。 由于SignalR使用服务器和客户端之间的持久连接,因此我遇到的问题是此设置只能处理3个连接。 Windows 10 Pro或Windows 10 Enterprise上IIS 8.5的并发连接限制是多少? 是否还有其他选项可以在家中托管此应用程序,而无需安装Windows Server?

模拟localhost上的慢速Internet连接

我使用c#,asp.net和iis,我想在我的电脑上模拟慢速互联网连接来测试我的应用程序。 是否有可能控制iis的带宽。 请不要建议 System.Threading.Thread.Sleep(someDuration); 在c#文件中。

使用C#和IIS 7保护大型下载

这是设置: 1个运行C#应用程序的Web服务器,我的用户(存储在所述服务器上的MySQL数据库中)进行身份validation。 1个运行软件TBD的文件服务器。 在过去,我使用lighttpd和mod_secdownload来保护文件服务器上的文件,并且它运行良好(ish)。 我想知道是否有办法使用IIS和C#.Net的组合来做到这一点。 我的所有其他服务器都运行该组合,如果我可以对文件服务器执行相同操作,它会简化一些事情。 踢球者是,托管的文件很大。 我见过人们使用小应用程序创建FileStream对象,读入文件并手动创建HTTP响应的示例。 这可行,但由于我正在处理500+ MB大小的文件,所以它很慢。 我可能会有300名用户同时点击该框,请求文件。 那不好。 所以,有人看到这个方法吗? 我正在尝试创建一个更透明的系统,如果我的所有服务器都运行相同的软件/硬件,它将使我的生活变得更加简单。 在此先感谢您提供的任何建议!

HttpRequestMessage.GetClientCertificate()在Web API中返回null

我有一个.NET4.5 WebAPI 2应用程序,它使用SSL客户端证书进行一些自定义安全相关检查。 调试应用程序时,无论我到目前为止尝试了什么, request.GetClientCertificate()都会为任何服务调用返回null 。 经测试的代码: 基本上,在我的服务方面,我有一个类似这样的方法: class CertificateChecker : ICertificateChecker { public bool Check(HttpRequestMessage request) { var cert = request.GetClientCertificate(); } } 我的单元使用request.Properties.Add(HttpPropertyKeys.ClientCertificateKey, cert)传递附加到请求的客户端证书进行测试(证书完全符合预期,validation工作,等等)。 但是,当我使用HttpClient调用实际WebAPI应用程序的测试时,在服务端的request.GetClientCertificate()行设置断点,同一行返回null。 这是我尝试过的: 客户证书: 创建了假CA并将其放入可信CA存储(尝试使用LocalMachine和当前用户)。 创建由该假CA签名的客户端身份validation(1.3.6.1.5.5.7.3.2)证书,并将其放入个人存储(LocalMachine和当前用户)。 (基本上,按照https://www.piotrwalat.net/client-certificate-authentication-in-asp-net-web-api-and-windows-store-apps/和类似的博客) 在我使用HttpClient调用服务的测试中,以下列方式附加了客户端证书(没有一个工作): 使用WebRequestHandler ,将ClientCertificateOptions设置为Manual,并将cert添加到ClientCertificates集合中。 using (var handler = new WebRequestHandler()) { var cert = GetTestCert(); handler.ClientCertificateOptions = ClientCertificateOption.Manual; handler.ClientCertificates.Add(cert); // and so on… } […]

在没有管理权限的本地IIS上调试网站

我的机器上有一个管理帐户,但由于安全原因,我不想以管理员身份运行visual studio。 我有ASP.NET网站,Windows 10,IIS8。 有没有办法在没有运行池的情况下使用我的凭据调试网站,或者以管理员或任何其他方法运行visual studio,权限不足? 我想调整我的窗口以允许我调试我的应用程序,并且不要像“以管理员身份运行”那样使用暴力。 对于winXP存在这篇文章

有没有办法忽略2GB文件上传的maxRequestLength限制?

这里我将maxRequestLength设置为2GB(最大值),这表示ASP.NET支持的最大请求大小: … 在这里我将maxAllowedContentLength设置为4GB(最大值),它指定IIS支持的请求中的最大内容长度 … 我希望能够上传最大4GB的文件,但我受到maxRequestLength字段的限制。 我注意到这个第三方上传工具(http://www.element-it.com/onlinehelp/webconfig.html)有一个ignoreHttpRuntimeMaxRequestLength属性,允许它上传最大4GB的文件。 有谁知道我是否可以像其他上传工具一样忽略maxRequestLength值?

在IIS中托管时支持Web服务

这是我的ICloudCameraService.cs [OperationContract] // Reset account (password default) [WebInvoke(Method = “POST”, ResponseFormat = WebMessageFormat.Json, UriTemplate = “ResetPasswordAccount”)] WsResult ResetPasswordAccount(Stream jsonDataStream); 在这里,我的WsResult.cs [DataContract] [Serializable] public class WsResult { [DataMember] public string result { get; set; } } 这是我的CloudCameraService.svc public WsResult ResetPasswordAccount(Stream jsonDataStream) { try { // Read in our Stream into a string… StreamReader reader = new […]

C#MySQL中的连接太多

我尝试在MySql的表上运行SELECT ,我收到此错误: Server Error in ‘/MyApp’ Application. Too many connections Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. Exception Details: MySql.Data.MySqlClient.MySqlException: Too many connections Source Error: An unhandled exception was generated during […]

更新面板中的按钮是否正在完整回发?

我正在关注如何使用此处的更新面板的简单示例( http://www.asp.net/Ajax/Documentation/Live/tutorials/IntroductionUpdatePanel.aspx )。 在更新面板之外,我有另一个html输入控件,它调用一个javascript函数,在一个警告框中向用户显示一个计数。 简单的东西。 我的问题是,在IIS和内置的asp.net Web服务器(cassini)上运行时,页面的行为会有所不同。 在IIS下单击更新面板中的按钮会导致完整的回发,因此每次都会在js函数中显示给用户的计数。 在内置的Web服务器下点击更新面板内的按钮表现我的期望和我想要的方式,它只刷新标签,以便客户端的计数器不重置。 .net 3.5是目标框架,我正在运行IIS 5.1。 我见过其他地方的post描述了同样的问题( http://forums.asp.net/t/1169282.aspx ) Untitled Page var count=0; function incrementCounter() { count ++; alert(count); } 更新: 感谢Crossbrowser的回答。 我的回复将在“添加评论”窗口中占用更多空间。 好的,所以按照这个简单的例子( http://www.asp.net/Ajax/Documentation/Live/tutorials/IntroductionUpdatePanel.aspx )你可以看到更新模式没有设置为条件所以我已经反映了这些变化。 但是我的问题仍然存在。 也就是说,在IIS上运行时页面会导致完整的回发。 即你浏览器中的进度条加载,屏幕闪烁,我维护的客户端计数丢失。 在内置的asp.net webserver上运行代码不会。 这是我的问题的关键。 我其他人遇到过这个问题( http://forums.asp.net/t/1169282.aspx )。 所以我的问题是,与内置的asp.net相比,在IIS上运行时会有什么不同? 更新的代码: Untitled Page var count=0; function incrementCounter() { count ++; alert(count); }

如何使用C#确定虚拟目录或网站的ASP.NET版本?

我如何找到IIS虚拟目录的.NET框架正在C#中使用。 我需要将它显示给用户。 using System.DirectoryServices; using System.IO; private enum IISVersion { IIS5, IIS6 } private void ReadVirtualDirectory(string server, string directory, IISVersion version) { string siteID = string.Empty; string path = string.Empty; switch(verison) { case IISVersion.IIS5: path = string.Format(“IIS://{0}/W3SVC/1/Root”, server); if(!string.IsNullOrEmpty(directory)) { path = string.Concat(path, “/”, directory); } break; case IISVersion.IIS6: path = string.Format(“IIS://{0}/W3SVC”, server); if(!string.IsNullOrEmpty(directory)) { […]