Tag: iis

asp.net下的Process.Start()?

根据msdn : ASP.NET Web页面和服务器控制代码在Web服务器上的ASP.NET辅助进程的上下文中执行。 如果在ASP.NET网页或服务器控件中使用Start方法,则新进程将在具有受限权限的Web服务器上执行。 该过程不会在与客户端浏览器相同的上下文中启动,也无法访问用户桌面。 哪个 帐号正是“限制权限” ? 示例: 我以RoyiN登录win7 Windows身份validation已启用 模拟已在 web.config(整个站点上)作为BobK 启用 W3WP用户是UserA (不是网络,也不是ApplicationPoolIdentity)。 在C#中,我执行Process.start(“….cmd.exe…”) ( 使用 Startinfo凭据:“ Martin ”,“ Password ”,“ Domain ”) 谁是最终运行cmd.exe的高效account ? “限制权限”实际上与谁有关?

ASP.NET MVC重新编译限制达到了15个HostingEnvironment,启动了关闭HostingEnvironment导致关机

在某些时候,在代码推送后不久,我们看到在我们的Web应用程序中发生了大量重启,没有记录任何问题。 所以我发现这篇文章: http : //weblogs.asp.net/scottgu/433194并且我们添加了Application_End日志记录,它立即显示了这个: _shutDownMessage =重新编译限制达到了15个HostingEnvironment启动了关闭HostingEnvironment导致在系统的System.Environment.get.StackTrace()处的System.Environment.GetStackTrace(Exception e,Boolean needFileInfo)处关闭_shutDownStack =,系统的System.Web.Hosting.HostingEnvironment.InitiateShutdownInternal() System.Threading.ExedownDemand(在System.Web.HttpRuntime.ShutdownAppDomain(String stackTrace)上的System.Threading.ExedownCallBack(对象状态)System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext,ContextCallback回调)中的.Web.Hosting.HostingEnvironment.InitiateShutdownWithoutDemand() System.Threading.ThreadPoolWorkQueue上的System.Threading.Quereading.QuereadingUserWorkItemCallback.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem()中的System.Threading.ExecutionContext.Run(ExecutionContext executionContext,ContextCallback回调,Object状态,Boolean preserveSyncCtx)处的System对象状态,布尔值preserveSyncCtx) 。调度() 谷歌搜索这个错误显然很少,所以我们更新了我们的web.config 和中提琴! 一切都恢复正常。 我们彻底审查了我们的变化,但没有发现任何我们认为可能是罪魁祸首的事情。 有没有其他人遇到这个或类似的,或者知道/怀疑世界上有什么可能导致这种情况? 任何反馈都会很棒!

以编程方式确定代码是否在IIS Express下运行

我不确定这是否可能,但我希望找到一条线索,以确定当前正在执行的代码是否在IIS Express下运行。 到目前为止,我的最佳逼近,这是令人难以置信的hackish,肯定会在某些时候失败/突破: bool IsExpress = Request.ServerVariables[“SERVER_SOFTWARE”] == “Microsoft-IIS/7.5” && Int32.Parse(Request.ServerVariables[“INSTANCE_ID”]) > 1000000000; 当然必须有更好的方法。 我对Application,Server和Request对象的检查似乎没有透露任何可能提供更好洞察力的内容。 也许我只需要看一些其他对象? 更新: 我真的很好奇,如果有办法检测到这一点 – 在这一点上它真的是学术性的,我没有迫切需要使用它。 原来的问题是。 但本着回应评论的精神,特别是我有兴趣回答本网站上另一个问题/答案的批评: 如何搜索服务器的MIME地图 。 批评是发布的答案不适用于IIS Express,只适用于传统的IIS实例。 IIS Express将MIME配置存储在applicationhost.config XML文件中,我想更新该答案,以便为IIS Express提供返回该信息的方法。 我当然可以添加一些从XML中获取适当值的代码(Yay for LINQ to XML!)但我真的想让它变得更聪明。 为了清楚起见,我不需要帮助解析该文件 – 只是尝试检测代码当前是否在IIS Express引擎中执行时更优雅。 更新2: IIS 8.0 Express Beta 本周发布 ,它进一步表明我的问题中的方法很脆弱并且会破坏。 虽然它不是针对特定版本的交易破坏者,但考虑到这一点并尝试确保代码至少与今天的已知版本一起使用会很好。

System.Data.SqlClient.SqlException:用户登录失败

在调试中使用我的项目我没有问题。 但是在IIS中运行它我收到此错误: System.Data.SqlClient.SqlException:用户’domain \ name-PC $’登录失败。 堆栈跟踪 [SqlException (0x80131904): Login failed for user ‘CAPLUGSLLC\OETINGER-PC$’.] System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction) +6749670 System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose) +815 System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady) +4515 System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj) +84 System.Data.SqlClient.SqlInternalConnectionTds.CompleteLogin(Boolean enlistOK) +53 […]

如何在Web安装项目中创建新的应用程序池?

我需要部署我的Web服务。 它需要使用自己的凭据在IIS中的单独应用程序池中运行。 是否可以通过在VS 2008中使用Web安装项目来实现此目的? 默认情况下,我似乎只能选择现有的应用程序池。

IIS部署后样式捆绑不起作用(MVC 4)

部署到IIS后,我的样式表捆绑问题很麻烦。 我已经创建了一个简单的解决方案来演示我的问题。 我创建了一个简单的测试项目(VS 2012,MVC 4),它包含一个控制器和一个包含“Hello World”字符串的视图。 我在内容文件夹下创建了一个(测试)CSS,简单的颜色变化 Content\helloWorldCss\helloWorldStyle.css 然后,我编辑了我的BundleConfig.cs类,并将我的CSS路径添加为新的bundle: bundles.Add(new StyleBundle(“~/Content/helloWorldCss”).Include(“~/Content/helloWorldCss/helloWorldStyle.css”)); 然后,我已将新包添加到_Layout.cshtml中 : @Styles.Render(“~/Content/helloWorldCss”) 当我通过VS(或Page inspector)运行我的应用程序时,我的CSS成功应用,一切似乎都没问题。 但是, 当我将项目发布/部署到IIS(通过VS)时,我可以查看我的HTML,但我的CSS没有被应用 。 部署后存在以下文件: Content\helloWorldCss\helloWorldStyle.css 让我感到困惑的是,当我改变我的_Layout.cshtml并将“常规”引用添加到相同的CSS而不是使用bundle ref时,CSS在发布后应用而没有任何问题。 * 我将非常感谢您的帮助和建议。

web.config中的enforceFIPSPolicy标志似乎不适用于Web应用程序

我正在尝试设置一个Web应用程序,以便在Windows注册表中将FIPSAlgorithmPolicy设置为1的环境中工作(特别是HKLM / SYSTEM / CurrentControlSet / Control / Lsa)。 启用此标志后,对MD5CryptoServiceProvider类的任何调用MD5CryptoServiceProvider将导致使用以下堆栈跟踪抛出Invalid Operation Exception : [InvalidOperationException: This implementation is not part of the Windows Platform FIPS validated cryptographic algorithms.] System.Security.Cryptography.RijndaelManaged..ctor() +10480142 System.Web.Configuration.MachineKeySection.ConfigureEncryptionObject() +439 System.Web.Configuration.MachineKeySection.EnsureConfig() +152 System.Web.Configuration.MachineKeySection.GetEncodedData(Byte[] buf, Byte[] modifier, Int32 start, Int32& length) +48 System.Web.UI.ObjectStateFormatter.Serialize(Object stateGraph) +381 System.Web.UI.Util.SerializeWithAssert(IStateFormatter formatter, Object stateGraph) +59 System.Web.UI.HiddenFieldPageStatePersister.Save() +89 System.Web.UI.Page.SaveAllState() +1117 System.Web.UI.Page.ProcessRequestMain(Boolean […]

使用c#在IIS中创建虚拟目录

这个需要一些解释…… 我想自动设置IIS,因此我们的集成测试(使用Watin)可以在任何环境中运行。 为此,我想创建一个将分别创建和销毁虚拟目录的Setup和Teardown。 我想到的解决方案是使用MSBuild社区任务在代码中使用模拟的IBuildEngine自动化IIS。 但是,当我尝试创建一个虚拟目录时,我收到以下错误代码: 0x80005008 。 编辑:我删除了早期尝试的工件,现在我得到一个IndexOutOfRangeException 我在Vista上使用IIS7。 这是我用来运行任务的代码: var buildEngine = new MockedBuildEngine(); buildEngine.OnError += (o, e) => Console.WriteLine(“ERROR” + e.Message); buildEngine.OnMessage += (o, e) => Console.WriteLine(“MESSAGE” + e.Message); buildEngine.OnWarning += (o, e) => Console.WriteLine(“WARNING: ” + e.Message); var createWebsite = new MSBuild.Community.Tasks.IIS.WebDirectoryCreate() { ServerName = “localhost”, VirtualDirectoryPhysicalPath = websiteFolder.FullName, VirtualDirectoryName = “MedicatiebeheerFittests”, […]

获取IIS工作进程崩溃转储

我在ASP.NET应用程序中做了一些不好的事情。 它可能是我正在使用的任意数量的CTP库,或者我只是没有妥善处理。 但是当我将ASP.NET重新部署到我的Vista IIS7安装或我的服务器的IIS6安装时,我崩溃了IIS工作进程。 我已经将问题缩小到我的HTTP爬虫,这是一个multithreading的野兽,在被要求时抓取网站以获取有用的信息。 在我启动爬虫并在顶部重新部署应用程序之后,IIS工作进程将崩溃(弹出崩溃消息)并继续重新加载应用程序域,而不是正常卸载appDomain并重新加载。 发生此崩溃时,我在哪里可以找到崩溃转储进行分析?

System.ComponentModel.Win32Exception:拒绝访问错误

我正在使用c#代码启动和停止窗口服务,但我收到此错误。 System.ComponentModel.Win32Exception: Access is denied 请帮我。 我的代码: public void StartService(string serviceName, int timeoutMilliseconds) { ServiceController service = new ServiceController(serviceName); try { TimeSpan timeout = TimeSpan.FromMilliseconds(timeoutMilliseconds); service.Start(); service.WaitForStatus(ServiceControllerStatus.Running, timeout); lblMessage.Text = “Service Started.”; } catch (Exception ex) { //lblMessage.Text = “Error in Service Starting.”; lblMessage.Text = ex.ToString(); } }