网络营销技巧

一.摘要本文总结了如何为使用IIS托管的网站启用Gzip压缩,从而减少网页网络传输大小,提高用户显示页面的速度.二.前言.本文的知识点是从互联网收集整理,主要来源于中文wiki.使用YSlow检测网站启用了哪些优化时,Gzip是十分关键的一项.启动Gip压缩将立竿见影的减少页面的网络传输大小.三.HTTP压缩概述HTTP压缩是在Web服务器和浏览器间传输压缩文本内容的方法。HTTP压缩采用通用的压缩算法如gzip等压缩HTML、JavaScript或CSS文件。压缩的最大好处就是降低了网络传输的数据量,从而提高客户端浏览器的访问速度。当然,同时也会增加一点点服务器的负担。Gzip是比较常见的一种HTTP压缩算法。四.HTTP压缩工作原理Web服务器处理HTTP压缩的工作原理如下:1.Web服务器接收到浏览器的HTTP请求后,检查浏览器是否支持HTTP压缩;在用户浏览器发送请求的HTTP头中,带有"Accept-Encoding:gzip,deflate"参数则表明支持gzip和deflate两种压缩算法.2.如果浏览器支持HTTP压缩,Web服务器检查请求文件的后缀名;静态文件和动态文件后缀启动要所都需要在MetaBase.xml中设置.静态文件需要设置:HcFileExtensionsMetabaseProperty(单击跳转到MSDN说明)动态文件需要设置:HcScriptFileExtensionsMetabaseProperty(单击跳转到MSDN说明)3.如果请求文件是HTML、CSS等静态文件并且文件后缀启用了压缩,则Web服务器到压缩缓冲目录中检查是否已经存在请求文件的最新压缩文件;4.如果请求文件的压缩文件不存在,Web服务器向浏览器返回未压缩的请求文件,并在压缩缓冲目录中存放请求文件的压缩文件;5.如果请求文件的最新压缩文件已经存在,则直接返回请求文件的压缩文件;6.如果请求文件是ASPX等动态文件并且文件后缀启用了压缩,Web服务器动态压缩内容并返回浏览器,压缩内容不存放到压缩缓存目录中。五.在IIS中启用HTTP压缩IIS默认并不支持HTTP压缩,需要进行简单的配置1.打开Internet信息服务(IIS)管理器,右击"网站"->"属性",选择"服务"。在"HTTP压缩"框中选中"压缩应用程序文件"和"压缩静态文件",按需要设置"临时目录"和"临时目录的最大限制";2.提醒:经试验此步骤在本人机器上没有作用,可以忽略.在Internet信息服务(IIS)管理器,右击"Web服务扩展"->"增加一个新的Web服务扩展...",在"新建Web服务扩展"框中输入扩展名"HTTPCompression",添加"要求的文件"为C:\WINDOWS\system32\inetsrv\gzip.dll,其中Windows系统目录根据您的安装可能有所不同,选中"设置扩展状态为允许";3.使用文本编辑器打开C:\Windows\System32\inetsrv\MetaBase.xml(建议先备份),找到Location="/LM/W3SVC/Filters/Compression/gzip用于设置gzip压缩,找到Location="/LM/W3SVC/Filters/Compression/deflate"用于设置deflate压缩.上面两个节点紧挨着.并且设置的属性相同.如果需要压缩动态文件,则将HcDoDynamicCompression设置为"TRUE",并在HcScriptFileExtensions中增加您要压缩的动态文件后缀名,如aspx;如果需要压缩静态文件,则将HcDoStaticCompression和HcDoOnDemandCompression设置为"TRUE",并在HcFileExtensions中增加您需要压缩的静态文件后缀名,如xml、css等;HcDynamicCompressionLevel和HcOnDemandCompLevel表示需要的压缩率,数值在0-10,默认为0.HcDynamicCompressionLevel属性说明:HcDynamicCompressionLevelMetabasePropertyHcOnDemandCompLevel属性说明:HcOnDemandCompLevelMetabaseProperty说明:这两个属性值一般推荐设置为9,具有最佳性价比.但是在我的windowserver2003上,压缩率无论如何设置,jQuery和jQueryUI两个文件(58k/188k)压缩后的大小一直相同.(20k/45k).下面是我的实例:<IIsCompressionSchemeLocation="/LM/W3SVC/Filters/Compression/deflate"HcCompressionDll="%windir%\system32\inetsrv\gzip.dll"HcCreateFlags="0"HcDoDynamicCompression="TRUE"HcDoOnDemandCompression="TRUE"HcDoStaticCompression="true"HcDynamicCompressionLevel="9"HcFileExtensions="htmhtmltxtjscssswfxml"HcOnDemandCompLevel="9"HcPriority="1"HcScriptFileExtensions="aspaspxdllexe"></IIsCompressionScheme><IIsCompressionSchemeLocation="/LM/W3SVC/Filters/Compression/gzip"HcCompressionDll="%windir%\system32\inetsrv\gzip.dll"HcCreateFlags="1"HcDoDynamicCompression="TRUE"HcDoOnDemandCompression="TRUE"HcDoStaticCompression="true"HcDynamicCompressionLevel="9"HcFileExtensions="htmhtmltxtjscssswfxml"HcOnDemandCompLevel="9"HcPriority="1"HcScriptFileExtensions="aspaspxdllexe"></IIsCompressionScheme>.csharpcode,.csharpcodepre{font-size:small;color:black;font-family:consolas,"CourierNew",courier,monospace;background-color:#ffffff;/*white-space:pre;*/}.csharpcodepre{margin:0em;}.csharpcode.rem{color:#008000;}.csharpcode.kwrd{color:#0000ff;}.csharpcode.str{color:#006080;}.csharpcode.op{color:#0000c0;}.csharpcode.preproc{color:#cc6633;}.csharpcode.asp{background-color:#ffff00;}.csharpcode.html{color:#800000;}.csharpcode.attr{color:#ff0000;}.csharpcode.alt{background-color:#f4f4f4;width:100%;margin:0em;}.csharpcode.lnum{color:#606060;}4.编辑完毕后保存MetaBase.xml文件;如果文件无法保存,则可能IIS正在使用该文件。打开"开始"->"管理工具"->"服务",停止"IISAdminService"后,即可保存;5.最后,重新启动IIS。可以到HTTP压缩测试网站验证结果.以jQuery为例,核心类库和UI类库原始大小分别是57k和188k,压缩后分别是20k和45k:我们通过Http头中的:Content-Encoding:gzip属性判断返回后的数据已经启用了gzip压缩:使用YSlow检测,当只启动静态文件压缩时,Gzip压缩评级为B:当同时启动了动态文件压缩时,Gzip压缩评级为A:六.要点总结1.在修改MetaBase.xml文件时,要停止"IISAdminService"服务.否则无法保存.2.静态压缩和动态压缩率最好设置为9.3.上文的步骤2,即使不添加Web服务扩展效果也是相同的.4.压缩率设置对js文件不起作用,压缩后大小总是相同的.5.图片文件即使启用了gzip压缩大小也没有变化.七.总结本文总结了如何在IIS中启用Gzip压缩.在半年前的项目中我为网站启用了Gzip,今天整理此文主要为了整理自己的知识以便以后忘记时复习.另外经查看ChinaCache公司提供的CDN也都启用了Gzip压缩.转:http://www.cnblogs.com/zhangziqiu/archive/2009/05/17/gzip.html

治根安全

ASP.NET的安全该如何设置,在我们配置好服务器环境后,把该搞好的权限都做好后,往往忽略了asp.net的权限,导致了服务器的不安全,那么ASP.NET的安全该如何设置呢?首先我们得找到ASP.NET的配置文件,位置在C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\CONFIG\web.config(注意不同版本红色部分目录可能不一样)找到配置文件后,我们该如何去配置才算安全呢?懒人方法:1.trustlevel设置为"High",如<trustlevel="High"originUrl=""/>2.同时可以配合系统本身的FSO权限设置站点根目录的web.config为只读。备注提示:0.FullTrust是绝对危险的1.切记要设置逻辑正确的策略,不要被攻击者用shell来重写策略文件。2.从webshell里执行起来的exe不受asp.net的策略限制。3.反射是个危险的方法4.花点时间配置安全策略是一劳永逸的事情默认web.config的权限设置节如下:<locationallowOverride="true"><system.web><securityPolicy><trustLevelname="Full"policyFile="internal"/><trustLevelname="High"policyFile="web_hightrust.config"/><trustLevelname="Medium"policyFile="web_mediumtrust.config"/><trustLevelname="Low"policyFile="web_lowtrust.config"/><trustLevelname="Minimal"policyFile="web_minimaltrust.config"/></securityPolicy><trustlevel="Full"originUrl=""/></system.web></location>level:必选的String属性Full:指定无限制的权限。授予ASP.NET应用程序访问任何资源的权限(受操作系统安全性的限制)。支持所有被授予特权的操作。该设置在AspNetHostingPermissionLevel枚举中称为Unrestricted。默认值是Full(无限制)。High:指定高级别的代码访问安全性,这意味着应用程序不能执行下列任何操作。•调用非托管代码。•调用服务组件。•写入事件日志。•访问Microsoft“消息队列”队列。•访问ODBC、OleDb或Oracle数据源。Medium:指定中等级别的代码访问安全性,这意味着除了High限制外,ASP.NET应用程序还不能执行下列任何操作。•访问应用程序目录以外的文件。•访问注册表。Low:指定低级别的代码访问安全性,这意味着除了Medium限制之外,应用程序还不能执行下列任何操作。•写入文件系统。•调用Assert方法来扩展对资源的权限。Minimal:指定最低级别的代码访问安全性,这意味着应用程序只有执行权限。

2012-10-30 3491 0
治根安全

1.CMD:netlocalgroupadministrators或者查看计算机管理管理员用户组,是否有未知的账户。cmd:netuser用户名查看用户详细详细,知道用户是什么时候创建和设置的密码2.注册表:HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users\Names和“计算机管理”中存在的账户进行比较3.运行“组策略”:gpedit.msc依次展开“计算机配置”→“Windows设置”→“安全设置”→“本地策略”→“审核策略”,双击右边的“审核策略更改”,在弹出的设置窗口中勾选“成功”,然后点“确定”。对“审核登陆事件”和“审核过程追踪”进行相同的设置。4、开启登陆事件审核功能  进行登陆审核后,可以对任何账户的登陆操作进行记录,包括隐藏账户,这样我们就可以通过“计算机管理”中的“事件查看器”准确得知隐藏账户的名称,甚至黑客登陆的时间。即使黑客将所有的登陆日志删除,系统还会记录是哪个账户删除了系统日志,这样黑客的隐藏账户就暴露无疑了。  5、通过事件查看器找到隐藏帐户  得知隐藏账户的名称后就好办了,但是我们仍然不能删除这个隐藏账户,因为我们没有权限。但是我们可以在“命令提示符”中输入“netuser隐藏账户名称654321”更改这个隐藏账户的密码。这样这个隐藏账户就会失效,黑客无法再用这个隐藏账户登陆。