<?xml version="1.0" standalone="yes"?>
<?xml-stylesheet type="text/xsl" href="css/rss.xslt"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>我的网's blog - 服务器相关</title><link>http://www.5dw.org/</link><description>分享互联,分享快乐 - </description><generator>RainbowSoft Studio Z-Blog 1.8 Walle Build 100427</generator><language>zh-CN</language><copyright>Copyright xxxx-xxxx Your WebSite. Some Rights Reserved.</copyright><pubDate>Mon, 06 Sep 2010 01:48:24 +0800</pubDate><item><title>IIS6.0假死机</title><author>succeed@188.com (我的网)</author><link>http://www.5dw.org/Archives/IIS6-0jiasiji.html</link><pubDate>Sat, 28 Aug 2010 09:55:43 +0800</pubDate><guid>http://www.5dw.org/Archives/IIS6-0jiasiji.html</guid><description><![CDATA[<p><strong>IIS6.0假死机，页面打不开，ASP页面，无法执行！网站打不开 <br /></strong>错误系统日志： <br />为应用程序池 'DefaultAppPool' 提供服务的进程关闭时间超过了限制。进程 ID 是 '1003'。有关更多信息，请参阅在 http://go.microsoft.com/fwlink/events.asp ;的帮助和支持中心。 <br />注：ID号，是变化的，可以为任何数据如3124，每次出现这种错误，ID都是不一样的！ <br />服务器表现：IIS6.0假死机，页面打不开，ASP页面，无法执行！网站打不开 <br />解决方法：目前IIS服务器应用程序池设置如下： <br />右击应用程序池DefaultAppPool，选取属性： <br />一、回收 <br />1、回收工作进程（分钟）：选中，值为1740 <br />2、回收工作进程（请求数目）：不选（原先设置为35000） <br />3、在下列时间回收工作进程：不填 <br />4、消耗太多内存时回收工作进程：全不选。（2、3、4项可能避免了在访问量高的时候强制回收进程可能引发的服务器响应问题，猜的^-^）服务器内存够大，豁出去了给它用。 <br />二、性能 <br />只选中空闲超时20分钟。其他都不选。WEB园最大工作进程数为1（默认）。原来的请求队列限制为4000，现在无限制。 <br />三、运行状况 <br />前两项都起用，是原来的默认设置。启动时间限制90秒，关闭时间限制180秒。 <br />&quot;关闭时间限制180秒&quot;是必须的，因为进程关闭的时间，就是在这儿设置，原来为90秒限制,是默认值，如果进程关闭时间超过90秒，则认为超时，从而出现：进程关闭时间超过了限制日志，所以，适当延长这个时间，可以避免这种错误！ <br />临时解决办法。适合WIN2003系统（IIS6），将每个应用程序设置不同的&quot;应用程序池&quot;即可。比如：新闻系统用一个单独的应用程序池、论坛再用一个单独的应用程序池、下载站点再用一个应用程序池。。。。。。。 <br />通过以上的方法，目前服务器还算稳定，偶尔（一般是N天）&quot;回收&quot;一下有问题的&quot;应用程序池&quot;就OK了。 <br />最近发现，服务器的Web Server总是离奇的死机。查看Log：为应用程序池 'DefaultAppPool' 提供服务的进程关闭时间超过了限制。进程 ID 是 '&times;&times;&times;&times;'。为应用程序池 'DefaultAppPool' 提供服务的进程 ID 为 &times;&times;&times;&times;的 worker 进程已经请求回收，因为 worker 进程达到了允许的运行时间限制。 <br />发现这个问题出现的时间刚好是多人在线的情况下发生。用任务管理器观察了一下：发现web service（即W3SVC） 的进程有问题，内存页面错误的值很高。 ms给出的定义： Page Faults/sec 是指处理器中&quot;页面错误&quot;的数量。当一个进程引用不在主存储器&quot;工作集&quot;中的虚拟内存页时，就会发生页面错误。如果该页面在 Standby 列表上，因而已在主存储器中，或者如果另一个与其共享该页面的进程正在使用该页，那么发生&quot;页面错误&quot;时，不会从磁盘读取该页面。 <br />事件类型: 警告 <br />事件来源: W3SVC <br />事件种类:无 <br />事件 ID: 1013 <br />日期: 2006-10-13 <br />16:01:51 <br />用户: N/A <br />计算机: <br />描述: <br />为应用程序池 'DefaultAppPool' 提供服务的进程关闭时间超过了限制。进程 ID 是 '2552'。 <br />有关更多信息，请参阅在 http://go.microsoft.com/fwlink/events.asp 的帮助和支持中心。 <br />相信这是由于不正确地设置了回收进程导致，建议关闭下列进程回收设置： <br />回收工作进程(分钟)：1200 <br />回收工作进程(请求数目)：10000 <br />启用CPU监视，最大CPU使用率：90% <br />由于设定了进程自动回收，而当每达到10000次点击，或CPU超过100%,就会强行回收application，导致客户端会出现Sevice Unavailable的错误。(实际上10000次点击，访问量一般的网站，几分钟就够了。) 建议启用计数器日志来监视CPU利用率和asp.net的指标，可以帮助你定位每5~10分钟出现一次是否是上述原因导致。 <br />另外，不要无理由地打开回收工作进程和使用工作进程池。一般理由通常是有不明原因的内存泄露、线程挂起等 <br />IIS日志： <br />应用程序:ISAPI 'C:\WINDOWS\system32\inetsrv\asp.dll' 报告它自身有问题，原因如下: 'ASP 不正常，因为执行请求的 100% 被挂起，而且请求队列已经使用了 0%。'。 <br />关于server 2003+IIS6 出现 'ASP 不正常，因为执行请求的 100% 被挂起 <br />现像如下: <br />站点无法打开,或者打开很慢.HTML可以打开.重新启动或者回收应用程序池可恢复.但过一段时间又会出现 <br />日志里会有: <br />ISAPI 'C:\WINDOWS\system32\inetsrv\asp.dll' reported itself as unhealthy for the following reason: 'ASP unhealthy because 100% of executing requests are hung and 6% of the request queue is full.'. <br />或者: <br />ISAPI 'C:\WINDOWS\system32\inetsrv\asp.dll' 报告它自身有问题，原因如下: 'ASP 不正常，因为执行请求的 100% 被挂起，而且请求队列已经使用了 0%。'。 <br />解决方法: <br />1.asp是否正确映射到'C:\WINDOWS\system32\inetsrv\asp.dll' <br />2.一般来讲,是由于在同属IIS的应用程序池出现了某个站ASP代码错误所致,使得内存耗尽,检查代码本身的问题.可以隔离到单独应用程序池调试 <br />3、减少应用程序池回收时间。默认为：1740。。可设为120（每2小时） <br />IIS假死的原因： <br />打开IIS 你就会看到应用程序池，默认只有一个应用程序池，查看应用程序池的属性，会发现他的回收时间，默认多达，1740分钟，就是说，需要在1740分钟后才回收此应用程序池，如果在这个时间内，达到请求的最高限制，那么就会出现ASP假死的情况，这个就是大型网站出现假死的情况，反而，小型网站确不会出现这样的情况，因为他请求少，流量少，还没达到限制数量。当然要看你的服务器上网站数目而定。 <br />以下是解决方法: <br />资料一 <br />单个网站解决方法: <br />把应用程序池回收时间缩短到300-600分钟，其间回收过程中，需要占用一点CPU资源，没办法，为了稳定性，再把回收时间设为凌晨5点。 <br />多网站解决方法： <br />我的服务器目前拉了70个网站左右，我新建六个应用程序池，把每个池回收时间缩小到300分钟，然后再分配每个池10个网站左右(这个分配是要求你的网站访问量所定)如果某个网站，访问量大，就单独给他一个程序池，但是这样做的后果就是需要大内存，一个池现在占用我120M内存左右，反正内存大，没关系， <br />那么多网站如何分配应用程序池，打开IIS--查看你要分配的网站属性，，查看主目录--在下面你就会看到应用程序池了，分配一个就行了。</p><p>&nbsp;</p><p>资料二 <br />大家在使用iis6时..如果装了动网论坛.肯定有出现过iis6假死现像..就是asp网页打开慢..但是iis却是正常的..静态网页打开速度一样..这时候..我一直是重启的方法..查了官方的资料结果没有...据官方资料说..win2003很快就要打这个补丁了..是iis6对access驱动支持不理像..也算是一个bug吧..由于我的服务器虚拟主机多..而且大多支持asp..如果一旦假死就无法运行..在多方面的资料查找下..找到了一个比较简单的方法..具体我测试是通过了..iis6自带数据应用程序池..现在就利用他来解决假死.. <br />首先把bbs设一个单独的目录..然后点击应用程序池..新建应用程序池.输入应用程序池id.. <br />然后把bbs的虚拟目录下面的.就用程序池..选择刚才新建的应用程序池... <br />然后再回到刚才设好的应用程序池...点击..属性...把回收工作进程数(分钟)及回收工作进程数还有在下列时间回收时间进程勾上..然后在下列时间回收程序池里左边添加..选择一个时间..一般来说..网站到凌晨3点的时候.基本人都很少了..这时回收一下bbs的进程数..就可以解决了iis假死的现像.. <br />当然还可以配置其他信息..比如说iis6的用户名.. 我们可以打开计处机管理..然后打开计算机用户管理..添加一个用户..设置好后..在应用程序池里面..标识..把添加的用户放上去..用用户来测试回收的进程..当然还有..其他配置..其实很简单..只要你好好看一下..就能明白意思... <br />对于我来说..这种方法可能不太方便..所以我用一个工具来回收应用程序池..这样方便而且快捷..个人用户当然不需要这种工具..我是公司工作..服务器压力挺大..所以都用工具来解决一些问题.所括.iis的备分.及虚拟主机ip的统一修改及端口访问的ip记录..用批处理是一个很简单又方便的方法.所以.把一台服务器做的安全..并不是哪么容易的事..特别是iis..经常去官方网站搜索资料是一个好习惯..还有就是经常性的访问日志..及注册表的用户还有加载运行的程序.及服务也是一个好方法..所以.要学会如何遇到问题如何处理问题!!!! <br />详细出处参考：http://www.jb51.net/article/13553.htm <br />如果您检查 C:\Windows\system32\LogFiles\HTTPERR\httperr*.log 文件在父 SUS 服务器, 您会将可能看到 Timer_MinBytesPerSecond 错误或 Timer_ConnectionIdle 错误。 这些是由 IIS 默认设置, 内其元数据库, 定义用于连接到保持活动小通信流速率和最大空闲时间之前连接中断允许。 <br />1) 从 IIS 管理器右键单击 Internet Information Server (IIS) 管理器级别根目录上并转到属性。 选中要启用直接编辑元数据库框。 单击确定。 <br />在记事本中打开 C:\Windows\system32\inetsrv\MetaBase.xml 文件 2)。 要搜索有关 &quot; MinFileBytesPerSec &quot;。 将用于 MinFileBytesPerSec 设置从 240 更改为 0。 执行其他搜索, 该时间将 600 &quot; ConnectionTimeout &quot;。 保存更改并退出。 <br />3) 重新启动 IISAdmin 服务以更改生效。 <br />一、关闭IIS HTTPRERR日志功能 <br />默认情况下,2003服务器会把所有IIS访问错误的记录写入 C:\WINDOWS\system32\LogFiles\HTTPERR 下的 log 文件中,如果访问量比较大,可能一段时间后 日志文件可能会占满C盘空间,导致服务器死机 <br />同时因为要写入所有的IIS访问记录,如果访问量较大会大大增加服务器CPU占用率 <br />关闭HTTPERR的方法 <br />运行里输入 regedit 进入注册表编辑器 <br />[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Servi ces\HTTP\Parameters] <br />在右边 点鼠标右键 新建dword值 EnableErrorLogging 重新启动服务器就可以了 <br />&quot;EnableErrorLogging&quot;=dword:00000000 <br />重起后,2003不再写入HTTPERR日志文件,可以看到服务器CPU占用明显下降! <br />二、修改存储目录也不失为一个好的办法 <br />寻找: <br />HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Servic es\HTTP\Parameters <br />在下面建立一个字符串值.即REG_SZ <br />数值名称 命名为: ErrorLoggingDir <br />数值数据 为你指定的路径 比如 D:\logofilse <br />&nbsp;</p><div id="c_jquery_test" style="display: none">&nbsp;</div><script type="text/javascript">if ($ != jQuery) {	$ = jQuery.noConflict();}</script>]]></description><category>服务器相关</category><comments>http://www.5dw.org/Archives/IIS6-0jiasiji.html#comment</comments><wfw:comment>http://www.5dw.org/</wfw:comment><wfw:commentRss>http://www.5dw.org/feed.asp?cmt=627</wfw:commentRss><trackback:ping>http://www.5dw.org/cmd.asp?act=tb&amp;id=627&amp;key=f2024880</trackback:ping></item><item><title>我的网5dw.org升级为双线服务器</title><author>succeed@188.com (我的网)</author><link>http://www.5dw.org/Archives/5dw-fuwuqishengji.html</link><pubDate>Sat, 21 Aug 2010 01:15:01 +0800</pubDate><guid>http://www.5dw.org/Archives/5dw-fuwuqishengji.html</guid><description><![CDATA[<p>我的网 升级为双线服务器速度比以前韩国提高了好多!</p><p>另外大量交换PR大于等于3的友情连接！冲刺PR升级4</p>]]></description><category>服务器相关</category><comments>http://www.5dw.org/Archives/5dw-fuwuqishengji.html#comment</comments><wfw:comment>http://www.5dw.org/</wfw:comment><wfw:commentRss>http://www.5dw.org/feed.asp?cmt=609</wfw:commentRss><trackback:ping>http://www.5dw.org/cmd.asp?act=tb&amp;id=609&amp;key=661732b9</trackback:ping></item><item><title>用独立服务器的站长常犯的错误！</title><author>succeed@188.com (我的网)</author><link>http://www.5dw.org/Archives/20100403504.html</link><pubDate>Sat, 03 Apr 2010 21:18:00 +0800</pubDate><guid>http://www.5dw.org/Archives/20100403504.html</guid><description><![CDATA[<p><table cellspacing="0" cellpadding="0">    <tbody>        <tr>            <td class="t_msgfont" id="postmessage_51158726">1、除非你确认自己掌握了，否则不要去试WIN2003的防火墙<br />            WIN2003防火墙打开后，默认是禁止3389端口的，有的朋友是改了端口却忘记了在防火墙里开放新的端口。有的朋友则人根本<br />            不会改端口，直接在服务器上试的，结果没改成功，重启就进不去了。<br />            2、千万小心，不要禁用了网卡<br />            在服务器上可要小心，本地连接上右键一下，然后左键一下，很可能就点了禁用了。结果可想而知。<br />            3、别忘记了更改超管密码<br />            一般IDC给用户的服务器装完了系统都有个默认的密码的，不修改的话很容易被黑。<br />            4、请用检测软件查看您服务器的硬件<br />            使用检测软件可以得到你服务器中大部分硬件的品牌和型号，比如你可以知道租用商是否真的给你使用的是金士顿内存。这样<br />            ，当你的服务器发生故障时，你就可以根据这些信息来判断是否有可能的是硬件问题。<br />            5、不要在服务器上浏览网页或者运行没有用过的程序<br />            或者说不要给服务器太多不安全的因素。在服务器上浏览网页将可能使服务器感染木马或者病毒。在服务器上运行没有用过的<br />            程序也有同样的危险，或者有可能导致服务器上的默认设置被改变。<br />            6、尽量不要一边看教程一边在服务器上设置<br />            阿江并不是一个笨人，但是有时候还是会犯错误的，所以就算教程是最新的最完整的，最好先在自己的电脑上演练一遍，确认<br />            没有问题了再在服务器上测试。<br />            8、有了服务器，就要学着去使用它。<br />            使用服务器，这看似很简单的事情，其实是一门很大的学问，没有哪个高手可以说他可以解决服务器里的所有的问题，更没有<br />            谁敢说他的服务器不会被黑。那么千万不要把维护服务器的希望寄托在临时找人帮忙上，要么就找个能长期帮自己的人，要么<br />            就干脆聘技术员，最好还是自己尽快学起来，因为没有谁会比你自己更了解你的服务器了。<br />            9、一定不要忘记了做备份<br />            虽然大多数时候备份是用不上的，但是一旦用上的时候没有备份那就是天大的灾难。在使用服务器的初期，误操作导致数据丢<br />            失的可能性很大，病毒和黑客入侵也会使你的网站数据毁于一旦，并且不要忘记了服务器最容易损坏的硬件就是硬盘。</td>        </tr>    </tbody></table></p>]]></description><category>服务器相关</category><comments>http://www.5dw.org/Archives/20100403504.html#comment</comments><wfw:comment>http://www.5dw.org/</wfw:comment><wfw:commentRss>http://www.5dw.org/feed.asp?cmt=477</wfw:commentRss><trackback:ping>http://www.5dw.org/cmd.asp?act=tb&amp;id=477&amp;key=30bbac84</trackback:ping></item><item><title>IIS的ISAPI-Rewrite防盗链规则写法</title><author>succeed@188.com (我的网)</author><link>http://www.5dw.org/Archives/20100322931.html</link><pubDate>Mon, 22 Mar 2010 12:10:42 +0800</pubDate><guid>http://www.5dw.org/Archives/20100322931.html</guid><description><![CDATA[<p>本规则支持白名单排除式防盗链，搜索引擎友好不屏蔽，被盗链后的错误提示转向，支持各种文件类型，经作者亲验真的能用，</p><p>近来小站遇到了盗链问题，至使网站的流量枉费流失，于是被迫准备为服务器安装防盗链机制以挽救本就不宽裕的带宽。通过G.CN和B.CN搜索后得出了几种不同的方案，例如网站程序的URL伪装法、服务器端的收费插件法和ISAPI-REWRITE的规则过滤法等，考虑自身网站结构和钱包的困难问题，最终选择了后者，即现在流行用来做伪静态的ISAPI Rewrite书写规则来实现我的防盗链&ldquo;梦想&rdquo;。</p><p>为什么说是梦想呢？首先表示惋惜，懒人我搜来了一大票经过无数次转载而来的文章，把现呈的代码应用后发现要么根本不起作用，要么就是效果达不到我想要的，几经周折后终于把这原本认为可以轻易借鉴照搬的防盗链给完成了，恨那些只会转载和伪原创的站长们，自己也不试试就拿来填充，害了多少人浪费了大把的时间。</p><p>经过恶补正则表达式相关教程并对前辈们留下的规则进行修改后，以下ISAPI Rewrite已经在我的服务器上正常运作。</p><p>经测试四种情况正常，即站内链接正常，白名单里的链接正常，盗链者链接屏蔽，搜索引擎链接正常。</p><p>详细如下；</p><p><strong>一、完全屏蔽所有盗链来源的写法（如已有其它规则，则置于已有规则的上面）</strong></p><p><table style="border-right: #0099cc 1px solid; table-layout: fixed; border-top: #0099cc 1px solid; border-left: #0099cc 1px solid; border-bottom: #0099cc 1px solid" cellspacing="0" cellpadding="6" width="95%" align="center" border="0">    <tbody>        <tr>            <td style="word-wrap: break-word" bgcolor="#ddedfb">RewriteCond Host: (.+)<br />            RewriteCond Referer: (?!http://\1.*).*<br />            RewriteRule .*\.(?:gif|jpg|jpeg|png|bmp) /block.gif [I,O,N]</td>        </tr>    </tbody></table></p><p>老板，来个小解：</p><p>第一行通过RewriteCond的HOST定义其下的规则所适用的请求主机范围。</p><p>第二行通过RewriteCond的Referer定义规则适用的请求来源地址，我们都知道任何通过互联网方式访问网站都会留下Referer的痕迹，就好像我们在IIS日志里看到的一样。这里的(?!http://\1.*).*意思就是判断所有通过http协义发来的请求，都要应用规则。</p><p>第三行通过RewriteRule定义防盗链文件的后缀，这里仅是图片后缀，需要的可以添加mp3,rar等其它所有后缀。后面的/block.gif表示如果遇上这些后缀的文件被盗链后的转向，这里转向/根目录的block.gif，可以是HTML等任何文件。如果只想某个文件夹下面的文件不被盗链，只需要加上路径就可以。例如不想images和pic目录下的文件被盗，但其它可以。就要改写成：</p><p>RewriteRule (/images/|/pic/).*\.(?:gif|jpg|jpeg|png|bmp) /block.gif [I,O,N]</p><p>这种情况主要是有些站长在别人友情链接里的图片地址是在自己这的。</p><p>最后面的[I,O,N]，I表示不区分大小写，O表示对URL进行标准化，可能是用来处理Unicode编码的地址（例如包含中文的URL）以及QueryString的内容，N表示重新从站点请求文件而不是从本地缓存读取文件，目的是防止当用户访问了盗你链的网站后，再回到你的网站也出现盗链提示。</p><p><font color="#ff0000">提示，由于此规则是通过Referer来获取带有http://字样的地址进行过滤，<strong>因此它无法防范其它协议的盗链，比如迅雷下载。</strong>但通过任何浏览器直接访问，只要是HTTP协义的，通杀。</font></p><p><font color="#ff0000">以上关于RewriteCond和RewriteRule的作用仅是本人的土法理解，欢迎在这方面有专业研究的朋友在评论中指正，以免误导，另外如果遇到isapi-rewrite版本问题，只要保证后面的正则式写法正确就行。</font></p><p><strong>二、排除性防盗链写法</strong></p><p><table style="border-right: #0099cc 1px solid; table-layout: fixed; border-top: #0099cc 1px solid; border-left: #0099cc 1px solid; border-bottom: #0099cc 1px solid" cellspacing="0" cellpadding="6" width="95%" align="center" border="0">    <tbody>        <tr>            <td style="word-wrap: break-word" bgcolor="#ddedfb">RewriteCond Host: (.+)<br />            RewriteCond Referer: (?!http://\1.*).*<br />            RewriteCond Referer: (?!http://(.*)(\.baidu\.com|\.google\.com|\.google\.cn|\.g\.cn|\.gougou\.com|\.soso\.com|\.sogou\.com|\.youdao\.com|\.bing\.com|\.yahoo\.com|\.yahoo\.cn|\.eojoo\.com)).*<br />            RewriteRule .*\.(?:gif|jpg|jpeg|png|bmp) /block.gif [I,O,N]</td>        </tr>    </tbody></table></p><p>老板，来个小解：</p><p>第一行同上</p><p>第二行同上</p><p>第三行通过正则表达式对第二行中的请求协义地址进行过滤，这里按上面的写法，过滤了所有流行的搜索引擎，当然也包括你自己的站，或是你同台服务器其它的站。每个不同的域名写法是\.baidu\.com，多个有|号相隔。如果是IP则这样写100\.100\.100\.100</p><p>第四行同上</p><p>这样说明应该不难理解吧，直接拿去用，按着原有格式改。</p><p><strong>规则中出现的正则表达式符号小解：</strong></p><p>.　表示匹配除换行符以外的任意字符</p><p>+　表示前面的字符可以出现一到任意多次</p><p>*　表示前面的字符可以出现零到任意多次</p><p>() 表示一个表达组，可以拿它和加减乘除法一起理解</p><p>?! 表示断言这个符号后面的字符如果出现则不再进行接下去的匹配</p><p>\　表示转义符号，比如网址中的.是规则内置的运算符号，要把它通过\转义成字符。</p><p>|　表示或者，用于连接多种可能</p><p>通过以上这&ldquo;乱七八糟&rdquo;的符号，竟然组成了如此强大的规则，感叹！</p>]]></description><category>服务器相关</category><comments>http://www.5dw.org/Archives/20100322931.html#comment</comments><wfw:comment>http://www.5dw.org/</wfw:comment><wfw:commentRss>http://www.5dw.org/feed.asp?cmt=446</wfw:commentRss><trackback:ping>http://www.5dw.org/cmd.asp?act=tb&amp;id=446&amp;key=63d4a0bb</trackback:ping></item><item><title>Windows 2003 IIS6 一键安装gzip脚本程序和GZIP的手动安装方法</title><author>succeed@188.com (我的网)</author><link>http://www.5dw.org/Archives/20100314942.html</link><pubDate>Sun, 14 Mar 2010 19:35:18 +0800</pubDate><guid>http://www.5dw.org/Archives/20100314942.html</guid><description><![CDATA[<p>一.摘要</p><p>　　本文总结了如何为使用IIS托管的网站启用Gzip压缩, 从而减少网页网络传输大小, 提高用户显示页面的速度.</p><p>　　二.前言.</p><p>　　本文的知识点是从互联网收集整理, 主要来源于中文wiki. 使用YSlow检测网站启用了哪些优化时, Gzip是十分关键的一项. 启动Gip压缩将立竿见影的减少页面的网络传输大小.</p><p>　　三.HTTP压缩概述</p><p>　　HTTP压缩是在Web服务器和浏览器间传输压缩文本内容的方法。HTTP压缩采用通用的压缩算法如gzip等压缩HTML、JavaScript或CSS文件。压缩的最大好处就是降低了网络传输的数据量，从而提高客户端浏览器的访问速度。当然，同时也会增加一点点服务器的负担。Gzip是比较常见的一种HTTP压缩算法。</p><p>　　四.HTTP压缩工作原理</p><p>　　Web服务器处理HTTP压缩的工作原理如下：</p><p>　　1.Web服务器接收到浏览器的HTTP请求后，检查浏览器是否支持HTTP压缩;</p><p>　　在用户浏览器发送请求的HTTP头中, 带有&quot;Accept-Encoding: gzip, deflate&quot;参数则表明支持gzip和deflate两种压缩算法.</p><p>　　2.如果浏览器支持HTTP压缩，Web服务器检查请求文件的后缀名;</p><p>　　静态文件和动态文件后缀启动要所都需要在MetaBase.xml中设置.</p><p>　　静态文件需要设置: HcFileExtensions Metabase Property (单击跳转到MSDN说明)</p><p>　　动态文件需要设置: HcScriptFileExtensions Metabase Property (单击跳转到MSDN说明)</p><p>　　3.如果请求文件是HTML、CSS等静态文件并且文件后缀启用了压缩，则Web服务器到压缩缓冲目录中检查是否已经存在请求文件的最新压缩文件;</p><p>　　4.如果请求文件的压缩文件不存在，Web服务器向浏览器返回未压缩的请求文件，并在压缩缓冲目录中存放请求文件的压缩文件;</p><p>　　5.如果请求文件的最新压缩文件已经存在，则直接返回请求文件的压缩文件;</p><p>　　6.如果请求文件是ASPX等动态文件并且文件后缀启用了压缩，Web服务器动态压缩内容并返回浏览器，压缩内容不存放到压缩缓存目录中。</p><p>　　五.启用HTTP压缩</p><p>执行CMD文件即可一步搞定。下载：<br />&nbsp;</p><p><a href="http://www.5dw.org/upload/IIS6-SET-GZIP.rar" target="_blank">IIS6-SET-GZIP.rar</a></p><p>注意常见问题：</p><p>在DZ论坛中开启GZP功能后 有可能首页不显示但是内容页可以显示 你去后台把GZIP关闭</p><p>还有安装了 IIS一流关键词过滤后关闭GZIP拦截。否则GZIP功能无法应用。</p>]]></description><category>服务器相关</category><comments>http://www.5dw.org/Archives/20100314942.html#comment</comments><wfw:comment>http://www.5dw.org/</wfw:comment><wfw:commentRss>http://www.5dw.org/feed.asp?cmt=414</wfw:commentRss><trackback:ping>http://www.5dw.org/cmd.asp?act=tb&amp;id=414&amp;key=6a1b803f</trackback:ping></item><item><title>MSSQL2000-.MDF文件如何导入sql2000数据库</title><author>succeed@188.com (我的网)</author><link>http://www.5dw.org/Archives/20100313160.html</link><pubDate>Sat, 13 Mar 2010 19:06:05 +0800</pubDate><guid>http://www.5dw.org/Archives/20100313160.html</guid><description><![CDATA[<p>数据库的安装：打开SQL企业管理器，依次点击Microsoft SQL Server，SQL Server组，（LOCAL）（Windows NT）。右键点击&ldquo;数据库&rdquo;，选择&ldquo;所有任务&rdquo;中的&ldquo;附加数据库&rdquo;选项，会看见如下画面。<br /><img title="" alt="" src="http://www.5dw.org/upload/201003131907368026.jpg" onload="ResizeImage(this,520)" /><br />点击&ldquo;附加数据库（A）&rdquo;会跳出&ldquo;附加数据库&mdash;（LOCAL）&rdquo;窗口如下：</p><p><img title="" alt="" src="http://www.5dw.org/upload/201003131908095366.jpg" onload="ResizeImage(this,520)" /><br />点击&ldquo;验证（V）&rdquo;按钮左边的一按钮，会跳出如下&ldquo;浏览现有的文件&mdash;（LOCAL）&rdquo;提示窗口如下：</p><p><img title="" alt="" src="http://www.5dw.org/upload/201003131908194538.jpg" onload="ResizeImage(this,520)" /><br />选择源文件所在的虚拟目录，打开book文件夹中的database文件夹，选择Book_Data.MDF文件(这里以Book_Data.MDF文件为例子)，<br />点击&ldquo;确定&rdquo;。<br /><br />&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p><img title="" alt="" src="http://www.5dw.org/upload/201003131909161084.jpg" onload="ResizeImage(this,520)" /><br />点击&ldquo;确定&rdquo;后，跳出如下提示窗口，再次点击&ldquo;确定&rdquo;，会跳出&ldquo;附加数据库顺利完成&rdquo;窗口，点击确定，数据添加完成，如图：</p><p>&nbsp;</p><p>&nbsp;</p><p><img title="" alt="" src="http://www.5dw.org/upload/201003131909300170.jpg" onload="ResizeImage(this,520)" /></p>]]></description><category>服务器相关</category><comments>http://www.5dw.org/Archives/20100313160.html#comment</comments><wfw:comment>http://www.5dw.org/</wfw:comment><wfw:commentRss>http://www.5dw.org/feed.asp?cmt=408</wfw:commentRss><trackback:ping>http://www.5dw.org/cmd.asp?act=tb&amp;id=408&amp;key=ff12a538</trackback:ping></item><item><title>MSSQL2000错误 2812: 未能找到 存储过程 master.d bo.xp_fixeddrives </title><author>succeed@188.com (我的网)</author><link>http://www.5dw.org/Archives/20100313831.html</link><pubDate>Sat, 13 Mar 2010 19:04:03 +0800</pubDate><guid>http://www.5dw.org/Archives/20100313831.html</guid><description><![CDATA[<p>在还原数据库的时候出现&quot;错误2812:未能找到存储过程'master.dbo.xp_fileexist'&quot;,<br /><br />分析原因:这是因为某个出于安全考虑把系统扩展存储过程所有的动态连接库都删了<br />通过搜索查询到下面的解决方法<br /><br />解决方法：1、<br />把恢复数据库需要用到的存储过程个恢复,打开MSSQL查询分析器,分别运行下面的两条数据库语句即可.<br />EXEC sp_addextendedproc xp_dirtree ,@dllname ='xpstar.dll'<br />EXEC sp_addextendedproc xp_fileexist ,@dllname ='xpstar.dll'<br /><br />解决方法：2、 重装SQL2000 <br /><br />SQL server 危险存储过程删除与恢复<br />删除<br />use master <br />exec sp_dropextendedproc 'xp_cmdshell' <br />exec sp_dropextendedproc 'xp_dirtree' <br />exec sp_dropextendedproc 'xp_enumgroups' <br />exec sp_dropextendedproc 'xp_fixeddrives' <br />exec sp_dropextendedproc 'xp_loginconfig' <br />exec sp_dropextendedproc 'xp_enumerrorlogs' <br />exec sp_dropextendedproc 'xp_getfiledetails' <br />exec sp_dropextendedproc 'Sp_OACreate' <br />exec sp_dropextendedproc 'Sp_OADestroy' <br />exec sp_dropextendedproc 'Sp_OAGetErrorInfo' <br />exec sp_dropextendedproc 'Sp_OAGetProperty' <br />exec sp_dropextendedproc 'Sp_OAMethod' <br />exec sp_dropextendedproc 'Sp_OASetProperty' <br />exec sp_dropextendedproc 'Sp_OAStop' <br />exec sp_dropextendedproc 'Xp_regaddmultistring' <br />exec sp_dropextendedproc 'Xp_regdeletekey' <br />exec sp_dropextendedproc 'Xp_regdeletevalue' <br />exec sp_dropextendedproc 'Xp_regenumvalues' <br />exec sp_dropextendedproc 'Xp_regread' <br />exec sp_dropextendedproc 'Xp_regremovemultistring' <br />exec sp_dropextendedproc 'Xp_regwrite' <br />drop procedure sp_makewebtask <br />go<br /><br />恢复<br />use master <br />exec sp_addextendedproc xp_cmdshell,'xp_cmdshell.dll' <br />exec sp_addextendedproc xp_dirtree,'xpstar.dll' <br />exec sp_addextendedproc xp_enumgroups,'xplog70.dll' <br />exec sp_addextendedproc xp_fixeddrives,'xpstar.dll' <br />exec sp_addextendedproc xp_loginconfig,'xplog70.dll' <br />exec sp_addextendedproc xp_enumerrorlogs,'xpstar.dll' <br />exec sp_addextendedproc xp_getfiledetails,'xpstar.dll' <br />exec sp_addextendedproc sp_OACreate,'odsole70.dll' <br />exec sp_addextendedproc sp_OADestroy,'odsole70.dll' <br />exec sp_addextendedproc sp_OAGetErrorInfo,'odsole70.dll' <br />exec sp_addextendedproc sp_OAGetProperty,'odsole70.dll' <br />exec sp_addextendedproc sp_OAMethod,'odsole70.dll' <br />exec sp_addextendedproc sp_OASetProperty,'odsole70.dll' <br />exec sp_addextendedproc sp_OAStop,'odsole70.dll' <br />exec sp_addextendedproc xp_regaddmultistring,'xpstar.dll' <br />exec sp_addextendedproc xp_regdeletekey,'xpstar.dll' <br />exec sp_addextendedproc xp_regdeletevalue,'xpstar.dll' <br />exec sp_addextendedproc xp_regenumvalues,'xpstar.dll' <br />exec sp_addextendedproc xp_regread,'xpstar.dll' <br />exec sp_addextendedproc xp_regremovemultistring,'xpstar.dll' <br />exec sp_addextendedproc xp_regwrite,'xpstar.dll'</p>]]></description><category>服务器相关</category><comments>http://www.5dw.org/Archives/20100313831.html#comment</comments><wfw:comment>http://www.5dw.org/</wfw:comment><wfw:commentRss>http://www.5dw.org/feed.asp?cmt=407</wfw:commentRss><trackback:ping>http://www.5dw.org/cmd.asp?act=tb&amp;id=407&amp;key=41d44627</trackback:ping></item><item><title>2010新春韩国虚拟主机</title><author>succeed@188.com (我的网)</author><link>http://www.5dw.org/Archives/HanGuoZHuJi.html</link><pubDate>Fri, 05 Mar 2010 16:13:36 +0800</pubDate><guid>http://www.5dw.org/Archives/HanGuoZHuJi.html</guid><description><![CDATA[<p>2010韩国虚拟主机空间 每月只需10元 详情联系QQ：110405</p>]]></description><category>服务器相关</category><comments>http://www.5dw.org/Archives/HanGuoZHuJi.html#comment</comments><wfw:comment>http://www.5dw.org/</wfw:comment><wfw:commentRss>http://www.5dw.org/feed.asp?cmt=386</wfw:commentRss><trackback:ping>http://www.5dw.org/cmd.asp?act=tb&amp;id=386&amp;key=70e9dbf4</trackback:ping></item><item><title>Notice: Undefined index:问题的解决的方法</title><author>succeed@188.com (我的网)</author><link>http://www.5dw.org/Archives/2010020855..html</link><pubDate>Mon, 08 Feb 2010 22:24:56 +0800</pubDate><guid>http://www.5dw.org/Archives/2010020855..html</guid><description><![CDATA[<p>这个不是错误，是warning。所以如果服务器不能改，每个变量使用前应当先定义。<br />方法1：服务器配置修改 修改php.ini配置文件，error_reporting = E_ALL &amp; ~E_NOTICE <br />方法2：对变量进行初始化，规范书写（比较烦琐，因为有大量的变量）。但还没有找到好定义方法，望大家指教 <br />方法3：每个文件头部加上：error_reporting(0); 如果不行，只有打开php.ini,找到display_errors，设置为display_errors = Off。以后任何错误都不会提示。ini_set(&quot;display_errors&quot;, 0); <br />方法4 ：做判断：isset($_GET[&quot;page&quot;])&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if-else判断或者加上'@'表示这行如果有错误或是警告不要輸出如：@$page=$_GET[&quot;page&quot;] 方法5：file1.php文件把$xx变量付一个值，用post传递给file2.php，如果file2.php没有$xx的定义，而直接使用$yy=$xx ...<br /><br />我用的方法3 在文件顶部加上了error_reporting(0);&nbsp; 你也可以尝试其他方式 根据自己的需求来</p>]]></description><category>服务器相关</category><comments>http://www.5dw.org/Archives/2010020855..html#comment</comments><wfw:comment>http://www.5dw.org/</wfw:comment><wfw:commentRss>http://www.5dw.org/feed.asp?cmt=321</wfw:commentRss><trackback:ping>http://www.5dw.org/cmd.asp?act=tb&amp;id=321&amp;key=281dab05</trackback:ping></item><item><title>win2003服务器上传限制200K问题解决方法</title><author>succeed@188.com (我的网)</author><link>http://www.5dw.org/Archives/20100129790.html</link><pubDate>Fri, 29 Jan 2010 21:04:34 +0800</pubDate><guid>http://www.5dw.org/Archives/20100129790.html</guid><description><![CDATA[<p>c:/windows/system32/inetsrv/MetaBase.xml</p><p>本地调试 2000 pro+iis 6 ，程序设置 上传文件大小为4M以下 程序正常运行<br />服务器 2003 + iis6 ,程序设置 上传文件大小为4M以下,只能上传 300K 以下的文件，请问在哪里修改 2003的配置啊，才能使服务器也上传4M以下的文件<br />--------------------------------------------------------------------------------<br />解决办法：<br />1、先在服务里关闭 iis admin service 服务。<br />2、找到 windows\system32\inetsrv\ 下的 metabase.xml 文件。<br />3、用纯文本方式打开，找到 ASPMaxRequestEntityAllowed 把它修改为需要的值（可修改为10M即：10240000），默认为：204800，即：200K。<br />4、存盘，然后重启 iis admin service 服务。<br />在 IIS 6.0 中，无法下载超过4M的附件时，可以按以下步骤解决：<br />1、先在服务里关闭 iis admin service 服务。<br />2、找到 windows\system32\inetsrv\ 下的 metabase.xml 文件。<br />3、用纯文本方式打开，找到 AspBufferingLimit 把它修改为需要的值（可修改为20M即：20480000）。<br />4、存盘，然后重启 iis admin service 服务。</p>]]></description><category>服务器相关</category><comments>http://www.5dw.org/Archives/20100129790.html#comment</comments><wfw:comment>http://www.5dw.org/</wfw:comment><wfw:commentRss>http://www.5dw.org/feed.asp?cmt=296</wfw:commentRss><trackback:ping>http://www.5dw.org/cmd.asp?act=tb&amp;id=296&amp;key=5838aba9</trackback:ping></item></channel></rss>
