Articles of web.config

添加网站主机名 – 我应该包括www前缀?

向IIS添加新网站时,“绑定”部分需要主机名,并给出一个示例: 例如:www.contoso.com或marketing.contoso.com 当为zuggler.com创build我的网站时,我应该在什么时候包含www前缀? 请注意,我很可能会使用我的web.config文件将zuggler.com请求redirect到www.zugger.com。 创build网站时,如果在“主机名”框中包含www前缀,是否有任何区别?

IIS中的基本HTTP身份validation

原谅我缺乏IIS的经验,但我有一个用户在托pipe服务器上运行与Plesk的IIS。 他使用受保护的文件夹,我正在寻找一种方法来: 允许他使用简单的用户名/密码组合来保护文件夹 将静态IP列入白名单,以便无需从该服务器授权即可访问该文件夹 它不必 – 也不会 – 是一个Plesk唯一的解决scheme。 如果有一种方法可以通过web.config来实现,那就更好了。 我基本上是寻找一个Apache的htaccess / htpasswd身份validation的IIS相当于:) 谢谢!

Javascript错误只在生产服务器上?

我正在发布几个asp.net网站从开发到生产的过程。 一切似乎都在开发工作正常,但在发布到生产时,我们得到一些访问该网站时的JavaScript错误。 这似乎是在服务器上的东西,虽然这个相同的代码已经部署到testing服务器,并与相同的客户端正常工作。 该服务器是使用IIS7的Windows 2008 错误被抛出: 一些语法错误(scriptResource) – 其中的10个 Error: syntax error Source File: http://website.com/ScriptResource.axd?d=abc032_vah79hasdf87&t=123456789 Line: 3 Source Code: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 错误与上述相同,但使用WebResource.axd而不是ScriptResource.axd – 其中2个 然后两个似乎是真正的原因? Sys is not defined 和 WebForm_AutoFocus is not defined —————–附录——————– 根据build议,我查看了ScriptResource.axd和WebResource.axd 如果任何页面被引用而不是login页面,则正在部署的Web应用程序具有表单身份validation并redirect到login页面。 看来,这是发生在ScriptResource.axd和WebResource.axd(即login页面试图引用这些项目,redirect发生,所以他们没有得到的JavaScript回来,错误抛出) 为此,我在web.config中添加了“location”标签,以允许所有用户访问这些项目,所以login页面将工作(请参阅下面的相关web.config部分) <system.web> <authentication mode="Forms"> <forms loginUrl="login.aspx" defaultUrl="home.aspx"/> </authentication> <authorization> <deny users="?"/> […]

如何configurationWeb.Config文件以允许自定义404处理,同时仍显示页面500错误详细信息?

要自定义404处理和基于托pipe公司的build议,我们正在使用以下web.config设置。 但是,我们很快意识到,通过这种configuration,任何页面错误(500错误)也会被​​redirect到这个自定义错误页面。 我怎样才能修改这个configuration文件,所以我们可以继续处理404自定义文件,同时仍然能够查看页面错误? <?xml version="1.0" encoding="utf-8" ?> <configuration> <system.webServer> <httpErrors errorMode="DetailedLocalOnly" defaultPath="/Custom404.html" defaultResponseMode="ExecuteURL"> <remove statusCode="404" subStatusCode="-1" /> <error statusCode="404" prefixLanguageFilePath="" path="/Custom404.html" responseMode="ExecuteURL" /> </httpErrors> </system.webServer> <system.web> <customErrors mode="On"> <error statusCode="404" redirect="/Custom404.html" /> </customErrors> </system.web> </configuration>

configSource文件的“connections.config”也用于父级,这是不允许的。

题: 我面临以下情况: 部署在机器“vmsomething”上的ASP.NET .NET 4.0 Web应用程序。 在IIS 7.5上运行的Web应用程序驻留在vmsomething上的d:\ webs \ myapplication上。 应用程序的configuration文件: connections.config <?xml version="1.0"?> <connectionStrings> <remove name="server"/> <add name="server" connectionString="Data Source=OUR_DB_Server;Initial Catalog=MY_INITIAL_CATALOG;Persist Security Info=False;User Id=OUR_DB_User;Password=OUR_TOP_SECRET_PASSWORD;MultipleActiveResultSets=False;Packet Size=4096;Application Name=&quot;MyApplication&quot;" providerName="System.Data.SqlClient"/> </connectionStrings> web.config中: <?xml version="1.0"?> <configuration> <connectionStrings configSource="connections.config"/> <system.web> <roleManager enabled="true" defaultProvider="AspNetWindowsTokenRoleProvider"/> <compilation strict="true" explicit="true"> <assemblies> <add assembly="System.DirectoryServices, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/> <add assembly="Microsoft.JScript, Version=8.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/> </assemblies> […]

防止URL重写规则被IIS7中的子目录inheritance

我有一个URL重写设置为干净的URL在CMS和我的web.config看起来像这样: <?xml version="1.0" encoding="UTF-8"?> <configuration> <system.webServer> <rewrite> <rules> <rule name="Clean URLs" stopProcessing="true"> <match url="^([^/]+)/?$" /> <conditions> <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" /> <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" /> </conditions> <action type="Rewrite" url="?id={R:1}" /> </rule> </rules> </rewrite> </system.webServer> </configuration> 它基本上将index.php?id=something变成干净的URL的something 。 很简单,它运作良好。 正如在CMS中常见的那样,为了防止后端中断,每个子目录在其web.config中都需要<remove name="Clean URLs" />或<clear /> ,这样规则就不会被inheritance。 有没有一种在父规则中指定它不应该被其子代inheritance的方式,通过某种方式将规则的范围限制在当前目录中? 就像<rule name="Clean URLs" stopProcessing="true" inherit="no">是史诗般的。

需要帮助一些IIS7 web.config压缩设置

我正在尝试在我的web.config文件中configuration我的IIS7压缩设置。 我试图启用HTTP 1.0请求是gzip。 MSDN 在这里有关于它的所有信息。 是否有可能在我自己的网站的web.config文件中有这个configuration信息? 或者我需要将它设置在应用程序级别? 目前,我有我的web.config中的代码… <system.webServer> <urlCompression doDynamicCompression="true" dynamicCompressionBeforeCache="true" /> <httpCompression cacheControlHeader="max-age=86400" noCompressionForHttp10="False" noCompressionForProxies="False" sendCacheHeaders="true" /> … other stuff snipped … </system.webServer> 它不工作:( HTTP 1.1请求得到压缩,只是不是1.0。 上面的MSDN页面说,它可以用在: – Machine.config中 对ApplicationHost.config 根应用程序Web.config 应用程序Web.config 目录Web.config 那么,我们可以在每个网站的基础上,以编程方式在web.config文件中设置这些设置吗? (这是一个应用程序Web.config文件…)我做错了什么? 欢呼:) 编辑:我被问到如何知道HTTP1.0没有得到压缩。 我正在使用失败的请求追踪规则,该规则会报告: DYNAMIC_COMPRESSION_START DYNAMIC_COMPRESSION_NOT_SUCESS Reason: 3 Reason: NO_COMPRESSION_10 DYNAMIC_COMPRESSION_END

你能告诉我,当我们在IIS服务器上编辑Web.config(在运行时)会发生什么?

你能告诉我,当我们在IIS服务器上编辑Web.config(在运行时)会发生什么。 依赖于web.config的应用程序是否自动重启? 如果是,是否可以取消自动重启(或重新加载web.config)?

IIS7:如何阻止访问与web.config文件?

我知道IIS7允许我使用web.config xml文件进行每个目录的configuration。 我有一个目录,一些configuration文件不想被networking访问。 本地web.config文件禁止读取访问将是一个很好的解决scheme。 什么应该是一个web.config文件的内容禁止networking访问的文件? 编辑:我试图把一个web.config文件与这些内容在一个文件中: <?xml version="1.0" encoding="utf-8" ?> <configuration> <system.web> <authorization> <deny users="*" /> <!– Denies all users –> </authorization> </system.web> </configuration> 但是我仍然可以直接访问目录中的文件。 它出什么问题了? 我如何debugging发生了什么?

IIS7 – locking违规错误,HTTP处理程序,模块和<clear />元素

我有一个ASP.NET站点,它使用自己的一套HTTP处理程序,并不需要任何模块。 所以,在IIS6中,我所要做的就是在我的web.config中: <httpModules> <clear /> </httpModules> 但是,如果我尝试在IIS7的system.webServer区域中执行相同的操作,则当我尝试查看该站点时,出现500错误;在IISpipe理器中,当我尝试查看处理程序映射时,出现一个popup框消息: 执行此操作时发生错误 细节: 文件名: ?\ \ C:\网站\ TheWebSiteGoesHere \的web.config 行号:39 错误:locking违规 第39行是<clear />元素的位置。 一些使用Googlesearch的解决scheme涉及到运行这个命令: %windir%\system32\inetsrv\appcmd.exe unlock config -section:system.webServer/modules …但是这并没有解决问题。