Win2003 IIS6.0性能优化指南
1、禁止多余的Web服务扩展 IIS6.0支持多种服务扩展,有些管理员偷懒或者不求甚解,担心Web运行中出现解析错误,索性在建站时开启了所有的Web服务扩展。殊不知,这其中的有些扩展比如“所有未知CGI扩展”、“在服务器端的包含文件”等是Web运行中根本用不到的,况且还占用IIS资源影响性能拖垮Web,甚至某些扩展存在漏洞容易被攻击者利用。因此,科学的原则是,用到什么扩展就启用什么扩展。 如果企业站点是静态页面,那什么扩展都不要开启。不过现在的企业站点都是交互的动态页面比如asp、php、jsp等。如果是asp页面,那只需开启“Active Server Pages”即可。对于php、jsp等动态页面IIS6.0默认是不支持的需要进行安装相应组件实现对这些扩展的支持。不过,此时用不到的扩展完全可以禁用。 禁止Web服务扩展的操作非常简单,打开“IIS管理器”,在左窗格中点击“Web服务扩展”,在右侧选择相应的扩展,然后点击“禁用”即可。(图1) 2、删除不必要的IIS扩展名映射 IIS默认支持.asp、.cdx等8种扩展名的映射,这其中除了.asp之外其他的扩展几乎用不到。这些用不着的扩展会加重web服务器的负担,而且带来一定的安全隐患。比如.asa,.cer等扩展名,就可以被攻击者利用来获得webshell。因为一般的asp系统都会限制asp文件的上传,但如果没有限制.asa或者.cer等扩展名,攻击者就可以更改文件后缀突破上传限制,运行.asa或者.cer的文件获得webshell。(图 2) 删除IIS扩展名的操作是:打开IIS管理器,右键单击“默认Web站点”选择“属性”,点击“主目录”选项卡,然后点击“配置”打开应用程序窗口,最后根据自己的需要选择不必要的应用程序映射比如.shtml, .shtm, .stm等,然后点击“删除”即可。(图3) 3、取消访问记录 IIS6.0默认开启对于web的访问记录。当开启记录功能后,IIS会事无巨细地忠实记录所有的web访问记录。这些记录文件的内容是非常庞杂的,比如访问时间、客户端IP、从哪个链接访问、 Cookies等,另外还包括 Method(方法), UserAgent(用户代理)等。这些记录不但占用大量的磁盘空间还大大地影响了web服务器的性能。有人做过评测,停止访问记录可以提升5%到8%的 web性能。而且这些记录对于一般用户,特别是中小型的Web站点没有什么用途,简直太耗费系统性能了,因此建议关闭它。 取消访问记录的操作是:打开IIS管理器,定位到具体的web站点,右键点击选择“属性”,在“主目录”选项卡下取消对“记录访问”的勾选即可。(图4) 4、对访问流量进行限制 默认情况下IIS 6.0对于访问量是没有限制的,如果并发连接过大超过了Web的负载轻则发生网络拥塞,重则导致服务器宕机。因此需要对用户的访问进行限制,控制Web访问的流量。 打开“Internet信息服务”管理器,在其窗口右侧点击主机名前面的“+”号,依次定位到某个Web站点上。选中该Web站点右键单击选择 “属性”,在打开的属性设置窗口中选中“性能”标签,将“启用带宽限制”复选框选中,在随后被激活的“最大网络使用”设置框中,指定你的网络站点带宽的具体数值。大家可以根据服务器的性能及其访问量综合考虑继续设置。对于一般的企业站点将带宽流量设置为1500kb/s就差不多了。同时在“网站连接”下可以进行连接限制的设置,大家可以根据情况设置一个数值。完成以上设置后,IIS就只能使用其被授予的资源进行Web服务,杜绝了异常情况造成的服务器过载,为Web减负。(图5) 5、让Web负载自由伸缩 默认情况下IIS是全负荷地为Web提供服务的,这在一定程度上加重了Web负担。如何能够自动地根据负载变化自动调节工作进程呢? 利用IIS 6.0的Web园,我们只需指定用于某个应用程序池的工作进程的数量就可以了实现各个Web站点之间的隔离。具体的配置步骤是:在“Internet信息服务”管理器中打开应用程序池的“属性”对话框,转到“性能”页,在“Web园”下面的“最大工作进程数”输入框中输入进程数量。当服务器的负载较小,不需要额外的工作进程时,IIS 6.0在一定的时间后(默认20分钟,可配置)自动缩减实际的工作进程数量;如果负载变大,需要额外的工作进程,IIS 6.0再次增加工作进程数量。另外,还可以“启用CUP监视”,设置“最大CPU使用率”,“刷新CUP使用率值”以及“CPU使用率超过最大使用率是执行的操作”,这些设置可以根据需要进行设置。当一切设置完成后这一切就交给IIS自动进行,不需要管理员干预。 (图6) 6、配置应用呈现池 IIS可以支持多个Web服务,特别是虚拟主机一台服务器上有非常多的Web站点。如何才能做到各个站点之间相互独立,不因某些Web站点出现故障而影响其他站点呢?为不同工作进程指定应用程序池是个很好的解决办法。 (1)、创建 打开“IIS 管理器”中,展开本地计算机,右键单击“应用程序池”,选择“新建→应用程序池”。在“应用程序池名称”框中,输入新的应用程序池名称。如果点选选“将现有应用程序池作为模板”,可以在“应用程序池名称”下来列表中选择相应的应用程序池,最后单击“确定”即可。 (图7) (2)、指派 在“IIS 管理器中”,右键单击你要为其指派应用程序池的站点然后单击“属性”。在该站点的属性面板中“主目录”选项卡,在“应用程序池”下拉列表中选择刚才创建的应用程序池即可。如果所有的选项为灰色,单击“创建”按钮就可以输入“应用程序名”,然后在“应用程序池”列表框中,选择并指派网站的应用程序池了。(图 8) (3)、回收 利用“回收”功能,可是设置如何恢复系统资源进行IIS资源使用的灵活定制。打开“IIS 管理控制台”,单击“+”号依次“展开本地计算机→应用程序池”。选择你要回收的应用程序池右键单击选择“属性”,出现应用程序池的属性对话框,单击“回收”选项卡在其下可以设置“进程回收”、“内存回收”等,所有这些设置大家根据实际需要进行设置。(图9) 总结:通过上述IIS优化措施,Web服务器就能轻装上阵其性能将会有较大的提升。当然,要从根本上改善Web性能,仅仅进行软设置是不够的。另外,还需要进行硬件改造,软硬结合才是最完美的解决方案。 管理互联网信息服务器(Internet Information Server,IIS)大家都知道,它是一个既简单而又麻烦的东西,简单的是安装它几乎不需要费什么脑筋,选择一下路径,然后一路按“下一步”就可以完成;配置也比较简单,只要有一定的NT和网络知识,照着说明书就可以架设一个像模像样的Web站点出来。然而管理IIS却没有想像的那样简单。使用一段时间以后,管理员往往会遇上服务器性能不良的情况。这时候,IIS的性能优化,就尤为重要了。 导致IIS服务性能不良的原因有两个方面。一个是人为的,也就是说管理员在安装、配置IIS的时候没有进行优化或者配置错误。另一个则是客观上的,随着运行的服务种类,以及访问人数的增加,服务器原有的硬件配置已不能满足要求了,这就需要提高硬件配置。 在服务器配置上优化IIS性能 1.IIS高速缓存是对IIS进行优化时要考虑的最重要的项目之一。服务器保留了一部分内存空间用作IIS高速缓存,为将来的请求存储对象,这样IIS就可从高速缓存中检索对象而不用从硬盘中检索。 调整IIS高速缓存的容量需要修改注册表,表项如下: \HKEY_LOCAL_MACHINE \System \CurrentControlSet \Services \InetInfo \Parameters \MemoryCacheSize MemoryCacheSize的范围是从0道4GB,缺省值为3072000(3MB)。 IIS通过高速缓存系统句柄、目录列表以及其他常用数据的值来提高系统的性能。这个参数指明了分配给高速缓存的内存大小。如果该值为0,那就意味着 “不进行任何高速缓存”。在这种情况下系统的性能可能会降低。如果你的服务器网络通讯繁忙,并且有足够的内存空间,可以考虑增大该值。必须注意的是修改注册表后,需要重新启动才能使新值生效。 2.使IIS使用处理器时间最长。服务器的CPU处理器能力总是有限的。哪一个应用程序占用处理器的时间最长,谁的性能就能得到最大的提高。 (1)在NT的控制面板中,双击系统图标。 (2)单击性能标签。 (3)在应用程序性能下将游标拖到None的位置,这样就可以使所有正在运行的服务,包括IIS,使用处理器的时间达到最大值。 3.服务器属性设置。在服务器属性里有一项可以使网络应用程序的总处理能力最大的选项,你当然应该选择它。 (1)在桌面上右键单击网络邻居图标,然后选择属性选项。 (2)单击“服务标签”。 (3)单击“服务器”,然后按“属性”。 (4)选择最大化网络应用程序的总处理能力。然后单击“OK。” 提高硬件配置来优化IIS性能 […]
View DetailsLINQ&EF任我行(二)--LinQ to Object (转)
LinQ to Objects是LinQ家庭的核心,其它的LinQ也使用了与LinQ to Objects相同的查询句法。最终编译器都是把LinQ句法翻译成扩展方法的链式表达式,同时把扩展方法中的lambda表达式转换成匿名类中的匿名方法,然后再把查询表达式编译成MSIL。 LinQ to SQL、LinQ to DataSets、LinQ to Entities和LinQ to XML则不是把查询表达式转换成MSIL,而是把查询表达式树转换成相应的特定查询语言。LinQ to SQL会生成T-SQL,LinQ to Entities会生成eSQL,LinQ to XML会生成XPath语句等。 LinQ标准查询操作符列表 《图1》 在VS2008及以后的版本中提供了LinQ的查询样例程序。 \Programe Files\Microsoft Visual Studio 2008(10.0 VS2010)\Samples\1033文件夹下有个压缩包CSharpSamples.zip,解压它,继续打开其中的文件夹 .\LinqSamples\SampleQueries\SampleQueries.sln,打开此解决方案,运行该项目,界面如下 《图2》 在左边选择示例,右侧上方会出现相应的LinQ代码,右侧下方会出现代码的运行结果。通过这个样例程序,我们可以学习LinQ的各种用法。 下面我们来学习LinQ常用操作符 一、筛选操作符Where 根据谓词对源序列的内容进行筛选,类似于SQL中的where子句。 1.简单where表达式 使用扩展方法 var query1 = CustomerList.Where(c => c.Country == “USA”); 使用查询表达式语法 query1 = from c in CustomerList where c.Country == “USA” select c; 使用扩展方法需要向where方法中传入lambda表达式。 2.复合where表达式 所谓的复合where表达式就是使用&&或||操作符对数据进行筛选 使用扩展方法 var query2 = CustomerList.Where(c => c.Country == “USA” && c.Orders.Any()); 使用查询表达式语法 query2 = from c in CustomerList where c.Country == “USA” […]
View DetailsCSS3属性之二:box-shadow
语法: box-shadow:<length> <length> <length> <length> || <color> 取值: <length> <length> <length>? <length>? || <color>: 阴影水平偏移值(可取正负值);阴影垂直偏移值(可取正负值);阴影模糊值;阴影颜色 说明: 设置块阴影 box-shadow这个属性应用的非常普遍,可以使你的元素立刻变得漂亮起来,只是记得不要把值设得太离谱。 box-shadow的四个参数: x-offset x轴偏移 y-offset y轴偏移 blur 模糊值 color of shadow 阴影颜色 下面来看一个例子,代码如下:
1 |
<div><span style="COLOR: #0000ff"><!</span><span style="COLOR: #ff00ff">DOCTYPE html</span><span style="COLOR: #0000ff">></span><br /><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">html</span><span style="COLOR: #0000ff">></span><br /><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">head</span><span style="COLOR: #0000ff">></span><br /><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">title</span><span style="COLOR: #0000ff">>盒子阴影</</span><span style="COLOR: #800000">title</span><span style="COLOR: #0000ff">></span><br /><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">meta </span><span style="COLOR: #ff0000">charset</span><span style="COLOR: #0000ff">="utf-8"</span><span style="COLOR: #ff0000"> </span><span style="COLOR: #0000ff">/></span><br /><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">style</span><span style="COLOR: #0000ff">></span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #800000"><br />.box </span><span style="background-color: rgb(245, 245, 245); ">{</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #ff0000"><br /> width</span><span style="background-color: rgb(245, 245, 245); ">:</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #0000ff">300px</span><span style="background-color: rgb(245, 245, 245); ">;</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #ff0000"><br /> height</span><span style="background-color: rgb(245, 245, 245); ">:</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #0000ff">300px</span><span style="background-color: rgb(245, 245, 245); ">;</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #ff0000"><br /> background-color</span><span style="background-color: rgb(245, 245, 245); ">:</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #0000ff">#fff</span><span style="background-color: rgb(245, 245, 245); ">;</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #ff0000"><br /> <br /> </span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #008000">/*</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #008000"> 设置阴影 </span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #008000">*/</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #ff0000"><br /> -webkit-box-shadow</span><span style="background-color: rgb(245, 245, 245); ">:</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #0000ff">1px 1px 3px #292929</span><span style="background-color: rgb(245, 245, 245); ">;</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #ff0000"><br /> -moz-box-shadow</span><span style="background-color: rgb(245, 245, 245); ">:</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #0000ff">1px 1px 3px #292929</span><span style="background-color: rgb(245, 245, 245); ">;</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #ff0000"><br /> box-shadow</span><span style="background-color: rgb(245, 245, 245); ">:</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #0000ff">1px 1px 3px #292929</span><span style="background-color: rgb(245, 245, 245); ">;</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #ff0000"><br /></span><span style="background-color: rgb(245, 245, 245); ">}</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #800000"><br /></span><span style="COLOR: #0000ff"></</span><span style="COLOR: #800000">style</span><span style="COLOR: #0000ff">></span><br /><span style="COLOR: #0000ff"></</span><span style="COLOR: #800000">head</span><span style="COLOR: #0000ff">></span><br /><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">body</span><span style="COLOR: #0000ff">></span><br /><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">div </span><span style="COLOR: #ff0000">class</span><span style="COLOR: #0000ff">="box"</span><span style="COLOR: #0000ff">></span><br /><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">br </span><span style="COLOR: #0000ff">/><</span><span style="COLOR: #800000">br </span><span style="COLOR: #0000ff">/><</span><span style="COLOR: #800000">br </span><span style="COLOR: #0000ff">/><</span><span style="COLOR: #800000">br </span><span style="COLOR: #0000ff">/></span><br />看,是不是很有立体感?没有设置边框啊。<br /><span style="COLOR: #0000ff"></</span><span style="COLOR: #800000">div</span><span style="COLOR: #0000ff">></span><br /><span style="COLOR: #0000ff"></</span><span style="COLOR: #800000">body</span><span style="COLOR: #0000ff">></span><br /><span style="COLOR: #0000ff"></</span><span style="COLOR: #800000">html</span><span style="COLOR: #0000ff">></span></div> |
运行效果如下(Chrome中): 还可以一次运用多个box-shadows,这样做会产生一些有趣的效果,看下面这个例子:
1 |
<div><span style="COLOR: #0000ff"><!</span><span style="COLOR: #ff00ff">DOCTYPE html</span><span style="COLOR: #0000ff">></span><br /><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">html</span><span style="COLOR: #0000ff">></span><br /><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">head</span><span style="COLOR: #0000ff">></span><br /><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">title</span><span style="COLOR: #0000ff">></</span><span style="COLOR: #800000">title</span><span style="COLOR: #0000ff">></span><br /><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">meta </span><span style="COLOR: #ff0000">charset</span><span style="COLOR: #0000ff">="utf-8"</span><span style="COLOR: #ff0000"> </span><span style="COLOR: #0000ff">/></span><br /><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">style</span><span style="COLOR: #0000ff">></span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #800000"><br />.box </span><span style="background-color: rgb(245, 245, 245); ">{</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #ff0000"><br /> width</span><span style="background-color: rgb(245, 245, 245); ">:</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #0000ff">300px</span><span style="background-color: rgb(245, 245, 245); ">;</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #ff0000"><br /> height</span><span style="background-color: rgb(245, 245, 245); ">:</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #0000ff">300px</span><span style="background-color: rgb(245, 245, 245); ">;</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #ff0000"><br /> background-color</span><span style="background-color: rgb(245, 245, 245); ">:</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #0000ff">#fff</span><span style="background-color: rgb(245, 245, 245); ">;</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #ff0000"><br /> <br /> </span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #008000">/*</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #008000"> 设置阴影 </span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #008000">*/</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #ff0000"><br /> -webkit-box-shadow</span><span style="background-color: rgb(245, 245, 245); ">:</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #0000ff">1px 1px 3px green, -1px -1px 3px blue</span><span style="background-color: rgb(245, 245, 245); ">;</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #ff0000"><br /> -moz-box-shadow</span><span style="background-color: rgb(245, 245, 245); ">:</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #0000ff">1px 1px 3px green, -1px -1px 3px blue</span><span style="background-color: rgb(245, 245, 245); ">;</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #ff0000"><br /> box-shadow</span><span style="background-color: rgb(245, 245, 245); ">:</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #0000ff">1px 1px 3px green, -1px -1px 3px blue</span><span style="background-color: rgb(245, 245, 245); ">;</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #ff0000"><br /></span><span style="background-color: rgb(245, 245, 245); ">}</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #800000"><br /></span><span style="COLOR: #0000ff"></</span><span style="COLOR: #800000">style</span><span style="COLOR: #0000ff">></span><br /><span style="COLOR: #0000ff"></</span><span style="COLOR: #800000">head</span><span style="COLOR: #0000ff">></span><br /><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">body</span><span style="COLOR: #0000ff">></span><br /><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">div </span><span style="COLOR: #ff0000">class</span><span style="COLOR: #0000ff">="box"</span><span style="COLOR: #0000ff">></span><br /><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">br </span><span style="COLOR: #0000ff">/><</span><span style="COLOR: #800000">br </span><span style="COLOR: #0000ff">/><</span><span style="COLOR: #800000">br </span><span style="COLOR: #0000ff">/><</span><span style="COLOR: #800000">br </span><span style="COLOR: #0000ff">/></span><br />看,我有两个颜色的阴影!O(∩_∩)O哈!<br /><span style="COLOR: #0000ff"></</span><span style="COLOR: #800000">div</span><span style="COLOR: #0000ff">></span><br /><span style="COLOR: #0000ff"></</span><span style="COLOR: #800000">body</span><span style="COLOR: #0000ff">></span><br /><span style="COLOR: #0000ff"></</span><span style="COLOR: #800000">html</span><span style="COLOR: #0000ff">></span></div> |
运行效果如下(Chrome中): 可以看到,有两个颜色的阴影。 看下面一个例子:为下面这张图片添加阴影,让其有立体感:
1 |
<div><span style="COLOR: #0000ff"><!</span><span style="COLOR: #ff00ff">DOCTYPE html</span><span style="COLOR: #0000ff">></span><br /><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">html</span><span style="COLOR: #0000ff">></span><br /><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">head</span><span style="COLOR: #0000ff">></span><br /><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">title</span><span style="COLOR: #0000ff">></</span><span style="COLOR: #800000">title</span><span style="COLOR: #0000ff">></span><br /><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">meta </span><span style="COLOR: #ff0000">charset</span><span style="COLOR: #0000ff">="utf-8"</span><span style="COLOR: #ff0000"> </span><span style="COLOR: #0000ff">/></span><br /><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">style</span><span style="COLOR: #0000ff">></span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #800000"><br />body </span><span style="background-color: rgb(245, 245, 245); ">{</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #ff0000"><br /> width</span><span style="background-color: rgb(245, 245, 245); ">:</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #0000ff">500px</span><span style="background-color: rgb(245, 245, 245); ">;</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #ff0000"><br /> margin</span><span style="background-color: rgb(245, 245, 245); ">:</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #0000ff">50px auto</span><span style="background-color: rgb(245, 245, 245); ">;</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #ff0000"><br /></span><span style="background-color: rgb(245, 245, 245); ">}</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #800000"><br />.box </span><span style="background-color: rgb(245, 245, 245); ">{</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #ff0000"><br /> position</span><span style="background-color: rgb(245, 245, 245); ">:</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #0000ff">relative</span><span style="background-color: rgb(245, 245, 245); ">;</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #ff0000"><br /> -webkit-box-shadow</span><span style="background-color: rgb(245, 245, 245); ">:</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #0000ff">1px 2px 4px rgba(0, 0, 0, 0.5)</span><span style="background-color: rgb(245, 245, 245); ">;</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #ff0000"><br /> -moz-box-shadow</span><span style="background-color: rgb(245, 245, 245); ">:</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #0000ff">1px 2px 4px rgba(0, 0, 0, 0.5)</span><span style="background-color: rgb(245, 245, 245); ">;</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #ff0000"><br /> box-shadow</span><span style="background-color: rgb(245, 245, 245); ">:</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #0000ff">1px 2px 4px rgba(0, 0, 0, 0.5)</span><span style="background-color: rgb(245, 245, 245); ">;</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #ff0000"><br /> padding</span><span style="background-color: rgb(245, 245, 245); ">:</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #0000ff">10px</span><span style="background-color: rgb(245, 245, 245); ">;</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #ff0000"><br /> background</span><span style="background-color: rgb(245, 245, 245); ">:</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #0000ff">#fff</span><span style="background-color: rgb(245, 245, 245); ">;</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #ff0000"><br /></span><span style="background-color: rgb(245, 245, 245); ">}</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #800000"><br />.box img </span><span style="background-color: rgb(245, 245, 245); ">{</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #ff0000"><br /> width</span><span style="background-color: rgb(245, 245, 245); ">:</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #0000ff">100%</span><span style="background-color: rgb(245, 245, 245); ">;</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #ff0000"><br /> border</span><span style="background-color: rgb(245, 245, 245); ">:</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #0000ff">1px solid #8a4419</span><span style="background-color: rgb(245, 245, 245); ">;</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #ff0000"><br /> border-style</span><span style="background-color: rgb(245, 245, 245); ">:</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #0000ff">inset</span><span style="background-color: rgb(245, 245, 245); ">;</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #ff0000"><br /></span><span style="background-color: rgb(245, 245, 245); ">}</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #800000"><br />.box:after </span><span style="background-color: rgb(245, 245, 245); ">{</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #ff0000"><br /> content</span><span style="background-color: rgb(245, 245, 245); ">:</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #0000ff">''</span><span style="background-color: rgb(245, 245, 245); ">;</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #ff0000"><br /> position</span><span style="background-color: rgb(245, 245, 245); ">:</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #0000ff">absolute</span><span style="background-color: rgb(245, 245, 245); ">;</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #ff0000"><br /> z-index</span><span style="background-color: rgb(245, 245, 245); ">:</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #0000ff">-1</span><span style="background-color: rgb(245, 245, 245); ">;</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #ff0000"><br /> <br /> </span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #008000">/*</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #008000"> 阴影部分 </span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #008000">*/</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #ff0000"><br /> -webkit-box-shadow</span><span style="background-color: rgb(245, 245, 245); ">:</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #0000ff">0 15px 20px rgba(0, 0, 0, 0.3)</span><span style="background-color: rgb(245, 245, 245); ">;</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #ff0000"><br /> -moz-box-shadow</span><span style="background-color: rgb(245, 245, 245); ">:</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #0000ff">0 15px 20px rgba(0, 0, 0, 0.3)</span><span style="background-color: rgb(245, 245, 245); ">;</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #ff0000"><br /> box-shadow</span><span style="background-color: rgb(245, 245, 245); ">:</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #0000ff">0 15px 20px rgba(0, 0, 0, 0.3)</span><span style="background-color: rgb(245, 245, 245); ">;</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #ff0000"><br /> <br /> width</span><span style="background-color: rgb(245, 245, 245); ">:</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #0000ff">70%</span><span style="background-color: rgb(245, 245, 245); ">;</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #ff0000"><br /> left</span><span style="background-color: rgb(245, 245, 245); ">:</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #0000ff">15%</span><span style="background-color: rgb(245, 245, 245); ">;</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #ff0000"><br /> height</span><span style="background-color: rgb(245, 245, 245); ">:</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #0000ff">100px</span><span style="background-color: rgb(245, 245, 245); ">;</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #ff0000"><br /> bottom</span><span style="background-color: rgb(245, 245, 245); ">:</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #0000ff">0</span><span style="background-color: rgb(245, 245, 245); ">;</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #ff0000"><br /></span><span style="background-color: rgb(245, 245, 245); ">}</span><span style="BACKGROUND-COLOR: #f5f5f5; COLOR: #800000"><br /></span><span style="COLOR: #0000ff"></</span><span style="COLOR: #800000">style</span><span style="COLOR: #0000ff">></span><br /><span style="COLOR: #0000ff"></</span><span style="COLOR: #800000">head</span><span style="COLOR: #0000ff">></span><br /><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">body</span><span style="COLOR: #0000ff">></span><br /><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">div </span><span style="COLOR: #ff0000">class</span><span style="COLOR: #0000ff">="box"</span><span style="COLOR: #0000ff">></span><br /> <span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">img </span><span style="COLOR: #ff0000">src</span><span style="COLOR: #0000ff">="allstar.jpg"</span><span style="COLOR: #ff0000"> title</span><span style="COLOR: #0000ff">="球星云集"</span><span style="COLOR: #ff0000"> </span><span style="COLOR: #0000ff">/></span><br /><span style="COLOR: #0000ff"></</span><span style="COLOR: #800000">div</span><span style="COLOR: #0000ff">></span><br /><span style="COLOR: #0000ff"></</span><span style="COLOR: #800000">body</span><span style="COLOR: #0000ff">></span><br /><span style="COLOR: #0000ff"></</span><span style="COLOR: #800000">html</span><span style="COLOR: #0000ff">></span></div> |
运行效果如下(Chrome中): 以前我吗需要在photoshop中把图片做成这样的效果,现在可以直接用CSS代码来实现了。 转自:http://www.cnblogs.com/lianjun/archive/2011/03/14/1983465.html
View DetailsASP内置对象 Request对象
集合 Request.ClientCertificate(key[SubField])所有客户证书的信息的集合。对于Key,该集合具有如下的关键字: Subject证书的主题。包含所有关于证书收据的信息。能和所有的子域后缀一起使用。 Issuer证书的发行人。包含所有关于证书验证的信息。除了CN外,能和所有的子域后缀一起使用。 VadidFrom证书发行的日期。使用VBScript格式。 ValidUntil该证书不在有效的时间。 SerialNumber包含该证书的序列号。 Certificate包含整个证书内容的二进制流,使用ASN.1格式。 对于SubField,Subject和Issuer关键字可以具有如下的子域后缀:(比如:SubjectOU或IssuerL) C起源国家。 O公司或组织名称。 OU组织单元。 CN用户的常规名称。 L局部。 S州(或省)。 T个人或公司的标题。 GN给定名称。 I初始。 当文件cervbs.inc(VBScript使用)或cerjavas.inc(Jscript使用)通过使用#INCLUDE导向包含在你的Active Server Page里时,下面两个标志可以使用: ceCertPresent指明客户证书是否存在,其值为TRUE或FALSE。 ceUnrecongnizedIssure指明在该链表中的最后的证书的发行者是否未知,其值为TRUE或FALSE。 Request.Cookies(Cookie[(key).Attribute]) Cookie的集合。允许获得浏览器的Cookie。Cookie指明返回那一个Cookie。Key用于从Cookie字典中返回具有某一关键字的Cookie值。对于Attribute,你能使用属性HasKeys来确定某一Cookie是否具有子关键字。HasKeys的值为TRUE或FALSE。 Request.Form(Parameter)[(Index).Count] 填写在HTML的表单中所有的数据的集合。Parameter是在HTML表单中某一元素的名称。当某一参数具有不止一个值(比如,当在<SELECT>中使用MULTIPLE属性时)时,使用Index。当某一参数具有多值时,Count指明多值个数。 Request.QueryString(Varible)[(Index).Count] 查询字符串的所有值的集合。Varible是在查询字符串某一变量的名称。当某一变量具有多于一个值时,使用Index。当某一参数具有多值时,Count指明值的个数。 Request.ServerVaribles(Server Environment Variable) 环境变量的集合。允许读取HTTP头。你可以通过使用HTTP_前缀来读取任何头信息。比如,HTTP_USER_AGENT接受客户代理HTTP头(浏览器类型)。除此外,你可以使用下表所示的变量获得任何环境信息。 ALL_HTTP客户端发送的所有HTTP标头,他的结果都有前缀HTTP_。 ALL_RAW客户端发送的所有HTTP标头,其结果和客户端发送时一样,没有前缀HTTP_ APPL_MD_PATH应用程序的元数据库路径。 APPL_PHYSICAL_PATH与应用程序元数据库路径相应的物理路径。 AUTH_PASSWORD当使用基本验证模式时,客户在密码对话框中输入的密码。 AUTH_TYPE这是用户访问受保护的脚本时,服务器用于检验用户的验证方法。 AUTH_USER代验证的用户名。 CERT_COOKIE唯一的客户证书ID号。 CERT_FLAG客户证书标志,如有客户端证书,则bit0为0。如果客户端证书验证无效,bit1被设置为1。 CERT_ISSUER用户证书中的发行者字段。 CERT_KEYSIZE安全套接字层连接关键字的位数,如128。 CERT_SECRETKEYSIZE服务器验证私人关键字的位数。如1024。 CERT_SERIALNUMBER客户证书的序列号字段。 CERT_SERVER_ISSUER服务器证书的发行者字段 CERT_SERVER_SUBJECT服务器证书的主题字段。 CERT_SUBJECT客户端证书的主题字段。 CONTENT_LENGTH客户端发出内容的长度。 CONTENT_TYPE客户发送的form内容或HTTP PUT的数据类型。 GATEWAY_INTERFACE服务器使用的网关界面。 HTTPS如果请求穿过安全通道(SSL),则返回ON。如果请求来自非安全通道,则返回OFF。 HTTPS_KEYSIZE安全套接字层连接关键字的位数,如128。 HTTPS_SECRETKEYSIZE服务器验证私人关键字的位数。如1024。 HTTPS_SERVER_ISSUER服务器证书的发行者字段。 HTTPS_SERVER_SUBJECT服务器证书的主题字段。 INSTANCE_IDIIS实例的ID号。 INSTANCE_META_PATH响应请求的IIS实例的元数据库路径。 LOCAL_ADDR返回接受请求的服务器地址。 LOGON_USER用户登录Windows NT的帐号 PATH_INFO客户端提供的路径信息。 PATH_TRANSLATED通过由虚拟至物理的映射后得到的路径。 QUERY_STRING查询字符串内容。 REMOTE_ADDR发出请求的远程主机的IP地址。 REMOTE_HOST发出请求的远程主机名称。 REQUEST_METHOD提出请求的方法。比如GET、HEAD、POST等等。 SCRIPT_NAME执行脚本的名称。 SERVER_NAME服务器的主机名、DNS地址或IP地址。 SERVER_PORT接受请求的服务器端口号。 SERVER_PORT_SECURE如果接受请求的服务器端口为安全端口时,则为1,否则为0。 SERVER_PROTOCOL服务器使用的协议的名称和版本。 SERVER_SOFTWARE应答请求并运行网关的服务器软件的名称和版本。 URL提供URL的基本部分。 方法 Request.BinaryRead(Count) 接收一个HTML表单的未经过处理的内容。当调用此方法时,Count指明要接收多少字节。在调用此方法后,Count指明实际上接收到多少个字节。 属性 Request.TotalBytes 查询体的长度,以字节为单位。
View Detailsmeta大全
一、HTTP-EQUIV HTTP-EQUIV类似于HTTP的头部协议,它回应给浏览器一些有用的信息,以帮助正确和精确地显示网页内容。常用的HTTP-EQUIV类型有: 1、Content-Type和Content-Language (显示字符集的设定) 用法:<Meta http-equiv="Content-Type" Content="text/html; Charset=gb2312">或<Meta http-equiv="Content-Language" Content="zh-CN"> 设定页面使用的字符集,用以说明主页制作所使用的文字或语言,浏览器会根据此来调用相应的字符集显示页面内容。简体中文一般为GB2132,繁体中文为BIG5,日文的字符集是iso-2022-jp,韩文的是ks_c_5601等。 2、Refresh (刷新) 用法:<Meta http-equiv="Refresh" Content="30">或<Meta http-equiv="Refresh" Content="5; Url=http://www.bazhan.net"> 让网页多少秒刷新自己,或在多少秒后让网页自动链接到其它网页。 3、Expires (期限) 用法:<Meta http-equiv="Expires" Content="0">或<Meta http-equiv="Expires" Content="Wed, 26 Feb 1997 08:21:57 GMT"> 指定网页在缓存中的过期时间,一旦网页过期,必须到服务器上重新调阅。注意:必须使用GMT的时间格式。 4、Pragma (cach模式) 用法:<Meta http-equiv="Pragma" Content="No-cach"> 网页不保存在缓存中,每次访问都刷新页面。这样设定,访问者将无法脱机浏览。 5、Set-Cookie (cookie设定) <Meta http-equiv="Set-Cookie" Content="cookievalue=xxx; expires=Wednesday,21-Oct-98 16:14:21 GMT; path=/"> 浏览器访问某个页面时会将它存在缓存中,下次再次访问时就可从缓存中读取,以提高速度。当你希望访问者每次都刷新你广告的图标,或每次都刷新你的计数器,就要禁用缓存了。通常HTML文件没有必要禁用缓存,对于ASP等页面,就可以使用禁用缓存,因为每次看到的页面都是在服务器动态生成的,缓存就失去意义。如果网页过期,那么存盘的cookie将被删除。必须使用GMT的时间格式。 6、Window-target (显示窗口的设定) 用法:<Meta http-equiv="Widow-target" Content="_top"> 强制页面在当前窗口以独立页面显示。这个属性是用来防止别人在框架里调用你的页面。Content选项:_blank、_top、_self、_parent。 7、Pics-label (网页RSAC等级评定) 用法:<META http-equiv="Pics-label" Contect="(PICS-1.1’http://www.bazhan.net' I gen comment 'RSACi North America […]
View Details清除页面缓存
当使用ASP进行Web编程时,你发现确实修改了程序代码,确认没有改错,却发现输出的Webyemi8an没有变化,这就是服务端将此ASP文件加入了页面缓存。 清楚页面缓存有一下几种方法; 1.在ASP页面首部加入一下代码: Response.Buffer=True Response.ExpiresAbsolute=Now()-1 Response.Expires=0 Response.CacheControl=“no-cache” Response.AddHeader “Pragma”,“no-Cache” 2.在HTML代码中加入下面的代码,不过这些代码似乎不能解决刷新无效的问题,因为这些代码只是针对客户端的页面缓存而已,只具有清楚客户端的页面缓存的功能。 <HEAD> <META HTTP-EQUIV="Pragma" CONTENT="no-cache"> <META HTTP-EQUIV="Cache-Control" CONTENT="no-cache"> <META HTTP-EQUIV="Expires" CONTENT="no-cache"> </HEAD> 3.如果一个ASP文件是url.asp,那么在访问的时候,脚本链接应该为: <input type="button" onclick="window.location.href=’url.asp?’+Math.random()" value="提交"/>
View DetailsScriptManager.RegisterStartupScript失效的解决方案
今天在项目中一个页面使用 System.Web.UI.ScriptManager.RegisterStartupScript(this, GetType(), "js", "alert('OK');", true);的时候发现没用,检查发现脚本没用注册到页面, check页面发现了问题,<form method="post"> 没用ruanat,更详细的信息请参看MSDN关于这个方法参数的介绍
View Details35岁前成功的12条黄金法则
第一章:一个目标 一艘没有航行目标的船,任何方向的风都是逆风 1、你为什么是穷人,第一点就是你没有立下成为富人的目标 2、你的人生核心目标是什么?杰出人士与平庸之辈的根本差别并不是天赋、机遇,而在于有无目标。 3、起跑领先一步,人生领先一大步:成功从选定目标开始 4、贾金斯式的人永远不会成功 为什么大多数人没有成功?真正能完成自己计划的人只有5%,大多数人不是将自己的目标舍弃,就是沦为缺乏行动的空想 5、 如果你想在35岁以前成功,你一定在25至30岁之间确立好你的人生目标 6、 每日、每月、每年都要问自己:我是否达到了自己定下的目标 第二章:两个成功基点 站好位置,调正心态,努力冲刺,35岁以前成功 (一)人生定位 1、 人怕入错行:你的核心竞争力是什么? 2、 成功者找方法,失败者找借口 4、 寻找自己的黄金宝地 (二)永恒的真理:心态决定命运,35岁以前的心态决定你一生的命运 1、 不满现状的人才能成为富翁 2、 敢于梦想,勇于梦想,这个世界永远属于追梦的人 3、 35岁以前不要怕,35岁以后不要悔 4、 出身贫民,并非一辈子是贫民,只要你永远保持那颗进取的心。中国成功人士大多来自小地方 5、 做一个积极的思维者 6、 不要败给悲观的自己 有的人比你富有一千倍,他们也会比你聪明一千倍么?不会,他们只是年轻时心气比你高一千倍。人生的好多次失败,最后并不是败给别人,而是败给了悲观的自己。 7、 成功者不过是爬起来比倒下去多一次 8、 宁可去碰壁,也不要在家里面壁 克服你的失败、消极的心态 (1) 找个地方喝点酒 (2) 找个迪厅跳跳舞 (3) 找帮朋友侃侃山 (4) 积极行动起来 第三章:三大技巧 1、管理时间:你的时间在哪里,你的成就就在哪里。 把一小时看成60分钟的人,比看作一小时的人多60倍 2、你不理财,财不理你 3、自我管理,游刃有余(1) 创业不怕本小,脑子一定要好(2) 可以开家特色店(3) 做别人不愿做的生意 第四章:四项安身立命的理念 35岁以前一定要形成个人风格 1、做人优于做事 做事失败可以重来,做人失败却不能重来(1) 做人要讲义气 (2) 永不气馁 2、豁达的男人有财运,豁达的女人有帮夫运 35岁以前搞定婚姻生活 3、忠诚的原则:35岁以前你还没有建立起忠诚美誉,这一缺点将要困扰你的一生 4、把小事做细,但不要耍小聪明 中国人想做大事的人太多,而愿把小事做完美的人太少 第五章:五分运气□ 比尔?盖茨说:人生是不公平的,习惯去接受它吧 1、人生的确有很多运气的成人:谋事在人,成事在天:中国的古训说明各占一半 2、机会时常意外地降临,但属于那些不应决不放弃的人 3、抓住人生的每一次机会 机会就像一只小鸟,如果你不抓住,它就会飞得无影无踪 4、 者早一步,愚者晚一步 第六章:六项要求 1、智慧 (1)别人可你以拿走你的一切,但拿不走你的智慧 (2)巧妙运用自己的智慧 (3)智者与愚者的区别 2、勇气 (1)勇气的力量有时会让你成为"超人" (2)敢于放弃,敢于"舍得" […]
View Details