<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet href='http://feed.feedsky.com/styles/feedsky2.xsl' type='text/xsl' ?><!--这是一个由Feedsy提供技术支持的Feed，为了提高读者阅读的体验，以及满足用户美化自己Feed的需要，我们设计了多种精美的Feed模板，提供给大家选择，所有最终呈现出来的样式，皆由用户自愿选择使用，未经许可，任何团体和个人，请不要擅自修改样式或者盗用，这是对于用户选择权的尊重。--><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:fs="http://www.feedsky.com/namespace/feed" xmlns:ppp="http://blog.sohu.com/ppp/" xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0"><channel><atom:link href="http://feed.feedsky.com/sohublog" type="application/rss+xml" rel="self"></atom:link><fs:self_link href="http://feed.feedsky.com/sohublog" type="application/rss+xml"></fs:self_link><lastBuildDate>Mon, 08 Feb 2010 14:03:00 GMT</lastBuildDate><title>混在北京</title><description>我的技术文章、工作及生活</description><link>http://iamcaihuafeng.blog.sohu.com/</link><ppp:ebi>c9d9a5b792</ppp:ebi><pubDate>Mon, 08 Feb 2010 14:03:00 GMT</pubDate><image><title>http://blog.sohu.com</title><url>http://js.pp.sohu.com/ppp/blog/images/common/logo_150_60.gif</url><link>http://blog.sohu.com/</link><description>搜狐博客</description></image><item><title>在CentOS下安装及配置openfp</title><link>http://iamcaihuafeng.blog.sohu.com/144111650.html</link><description>&lt;div style=&quot;line-height:160%;font-size:14px;&quot;&gt;&lt;div style=&quot;line-height:160%;font-size:14px;&quot;&gt;&lt;font&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;openfp需要用到fftw，所以要先安装fftw。&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/font&gt;&lt;div style=&quot;margin-left: 40px;&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;OpenFP allows to create audio fingerprint files from music tracks using
the OpenFP client to match them against a set of reference fingerprints
provided by the OpenFP server.&lt;/span&gt;&lt;a href=&quot;http://sourceforge.net/projects/open-fp/&quot; target=&quot;_blank&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;Via&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;font&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;安装目录的README文件里面有相关的说明&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/font&gt;&lt;div style=&quot;margin-left: 40px;&quot;&gt;&lt;font&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;Before installing ensure that you have met the library requirements:&lt;/span&gt;&lt;/font&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;font&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&amp;nbsp; * libfftw3&lt;/span&gt;&lt;/font&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;font&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;To compile the sources simply run:&lt;/span&gt;&lt;/font&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;font&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&amp;nbsp;&amp;nbsp; ./configure&lt;/span&gt;&lt;/font&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;font&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&amp;nbsp;&amp;nbsp; make&lt;/span&gt;&lt;/font&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;font&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&amp;nbsp;&amp;nbsp; make install&lt;/span&gt;&lt;/font&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;font&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;从这儿找到下载地址，&lt;/span&gt;&lt;/font&gt;&lt;a href=&quot;http://www.fftw.org/download.html&quot; target=&quot;_blank&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;http://www.fftw.org/download.html&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;font&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;[root@CentOS_Test_Server openfp-1.3.0]# wget &lt;/span&gt;&lt;/font&gt;&lt;a href=&quot;http://www.fftw.org/fftw-3.2.2.tar.gz&quot; target=&quot;_blank&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;http://www.fftw.org/fftw-3.2.2.tar.gz&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;font&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;[root@CentOS_Test_Server openfp-1.3.0]# tar zxvf fftw-3.2.2.tar.gz&lt;br /&gt;./configure&lt;br /&gt;make &amp;amp;&amp;amp; make install&lt;br /&gt;&lt;br /&gt;wget http://sourceforge.net/projects/open-fp/files/Unstable/1.3.0/openfp-1.3.0.tar.gz/download&lt;br /&gt;tar zxvf openfp-1.3.0.tar.gz&lt;br /&gt;cd openfp-1.3.0&lt;br /&gt;./configure&lt;br /&gt;make &amp;amp;&amp;amp; make install&lt;br /&gt;&lt;br /&gt;open-fp安装完成以后，在/usr/local/bin下面会发现三个文件，afp就是Audio Fingerprinting的意思。&lt;br /&gt;[root@CentOS_Test_Server openfp-1.3.0]# cd /usr/local/bin/&lt;br /&gt;[root@CentOS_Test_Server bin]# ls -l *fp*&lt;br /&gt;-rwxr-xr-x 1 root root 918326 Feb&amp;nbsp; 6 04:57 afp_extract&lt;br /&gt;-rwxr-xr-x 1 root root&amp;nbsp; 17815 Feb&amp;nbsp; 6 04:57 afp_match&lt;br /&gt;-rwxr-xr-x 1 root root&amp;nbsp; 84972 Feb&amp;nbsp; 6 04:57 afp_server&lt;br /&gt;&lt;br /&gt;-----------------------------------------&lt;br /&gt;下面说一下配置open-fp时遇到的郁闷问题，一直提示下面的错误信息，怎么也过不去。&lt;br /&gt;checking for pkg-config... /usr/bin/pkg-config&lt;br /&gt;checking pkg-config is at least version 0.9.0... yes&lt;br /&gt;checking for FFTW3... configure: error: Package requirements (&amp;quot;fftw3&amp;quot;) were not met:&lt;br /&gt;&lt;br /&gt;No package 'fftw3' found&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;Consider adjusting the PKG_CONFIG_PATH environment variable if you&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;installed software in a non-standard prefix.&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color: rgb(255, 0, 0); font-weight: bold;&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;Alternatively, you may set the environment variables FFTW3_CFLAGS&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color: rgb(255, 0, 0); font-weight: bold;&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;and FFTW3_LIBS to avoid the need to call pkg-config.&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;See the pkg-config man page for more details.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;其实从openfp的配置命令中也可以知道FFTW3_CFLAGS及FFTW3_LIBS的解释&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;[root@CentOS_Test_Server openfp-1.3.0]# ./configure --help | grep FFTW3&lt;br /&gt;&amp;nbsp; FFTW3_CFLAGS&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; C compiler flags for FFTW3, overriding pkg-config&lt;br /&gt;&amp;nbsp; FFTW3_LIBS&amp;nbsp; linker flags for FFTW3, overriding pkg-config&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;从&lt;/span&gt;&lt;/font&gt;&lt;a href=&quot;http://www.sudu.cn/info/html/edu/20080407/265958.html&quot; target=&quot;_blank&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;这篇文章&lt;/span&gt;&lt;/a&gt;&lt;font&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;找到了解决方案，那就是修改了环境变量PKG_CONFIG_PATH的值，将/usr/local/lib/pkgconfig加到里面，因为fftw3默认是安装到/usr/local目录下面的，如果不指定，则configure无法知道的，配置的时候就不报错了。&lt;/span&gt;&lt;span style=&quot;font-weight: bold; color: rgb(255, 0, 0);&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;这是我第一次遇到这种问题，以前没遇到过，也算是新学了一招&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;。&lt;br /&gt;[root@CentOS_Test_Server openfp-1.3.0]# export PKG_CONFIG_PATH=/usr/lib/pkgconfig:/usr/local/lib/pkgconfig&lt;br /&gt;&lt;br /&gt;[root@CentOS_Test_Server bin]# echo $PKG_CONFIG_PATH&lt;br /&gt;/usr/lib/pkgconfig:/usr/local/lib/pkgconfig&lt;br /&gt;&lt;br /&gt;也可以把环境变量PKG_CONFIG_PATH中到bash文件里面&lt;br /&gt;&lt;br /&gt;[root@CentOS_Test_Server bin]# vi ~/.bashrc&lt;br /&gt;# .bashrc&lt;br /&gt;&lt;br /&gt;# User specific aliases and functions&lt;br /&gt;&lt;br /&gt;alias rm='rm -i'&lt;br /&gt;alias cp='cp -i'&lt;br /&gt;alias mv='mv -i'&lt;br /&gt;&lt;br /&gt;PKG_CONFIG_PATH=/usr/lib/pkgconfig:/usr/local/lib/pkgconfig&lt;br /&gt;&lt;br /&gt;# Source global definitions&lt;br /&gt;if [ -f /etc/bashrc ]; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; . /etc/bashrc&lt;br /&gt;fi&lt;br /&gt;&lt;br /&gt;查看文件fftw3.pc的内容&lt;br /&gt;[root@CentOS_Test_Server openfp-1.3.0]# more /usr/local/lib/pkgconfig/fftw3.pc&lt;br /&gt;prefix=/usr/local&lt;br /&gt;exec_prefix=${prefix}&lt;br /&gt;libdir=${exec_prefix}/lib&lt;br /&gt;includedir=${prefix}/include&lt;br /&gt;&lt;br /&gt;Name: FFTW&lt;br /&gt;Description: fast Fourier transform library&lt;br /&gt;Version: 3.2.2&lt;br /&gt;Libs: -L${libdir} -lfftw3 -lm&lt;br /&gt;Cflags: -I${includedir}&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;line-height:160%;font-size:14px;&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;openfp总时还不知道怎么使用，安装以后提供了三个命令，使用起来估计比lastfmfpclient要复杂一些，实在不行再找其它的。&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;line-height:160%;font-size:14px;&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style=&quot;font-weight: bold;&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;我的相关日志：&lt;/span&gt;&lt;/div&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;2010-02-08&amp;nbsp;|&amp;nbsp;&lt;/span&gt;&lt;a href=&quot;http://iamcaihuafeng.blog.sohu.com/144110863.html&quot; target=&quot;_blank&quot; title=&quot;在CentOS下安装及配置lastfmfpclient&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;在CentOS下安装及配置lastfmfpclient&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;2010-02-01&amp;nbsp;|&amp;nbsp;&lt;/span&gt;&lt;a href=&quot;http://iamcaihuafeng.blog.sohu.com/143670908.html&quot; target=&quot;_blank&quot; title=&quot;在CentOS5.2下安装PHP的id3扩展&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;在CentOS5.2下安装PHP的id3扩展&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;2010-01-17&amp;nbsp;|&amp;nbsp;&lt;/span&gt;&lt;a href=&quot;http://iamcaihuafeng.blog.sohu.com/142463995.html&quot; target=&quot;_blank&quot; title=&quot;解决CentOS下安装ffmpeg时的错误&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;解决CentOS下安装ffmpeg时的错误&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;2009-12-14&amp;nbsp;|&amp;nbsp;&lt;/span&gt;&lt;a href=&quot;http://iamcaihuafeng.blog.sohu.com/139613701.html&quot; target=&quot;_blank&quot; title=&quot;在Debian下安装lame及ffmpeg&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;在Debian下安装lame及ffmpeg&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;2010-02-01&amp;nbsp;|&amp;nbsp;&lt;/span&gt;&lt;a href=&quot;http://iamcaihuafeng.blog.sohu.com/143672733.html&quot; target=&quot;_blank&quot; title=&quot;怎样尽可能的避免请求是的空数据？&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;怎样尽可能的避免请求是的空数据？&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/331034704/sohublog/feedsky/s.gif?r=http://iamcaihuafeng.blog.sohu.com/144111650.html&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/sohublog/331034704/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/sohublog/331034704/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=05afa7eb8f1ff314a81fa06560168991&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=05afa7eb8f1ff314a81fa06560168991&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=de3e679da15279601fd30e3f246a5c94&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=de3e679da15279601fd30e3f246a5c94&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=0a07d34fc8bb215b5a593d39d56e5d2a&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=0a07d34fc8bb215b5a593d39d56e5d2a&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=2dc06c49a2f678171e323b3cc7311024&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=2dc06c49a2f678171e323b3cc7311024&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=f00cfea130ed4692e25e65a0fb864fb6&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=f00cfea130ed4692e25e65a0fb864fb6&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=d8f8e870a65fa4af2edb02fc8bcb568d&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=d8f8e870a65fa4af2edb02fc8bcb568d&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=1b4675258aba304e897420b8b0418325&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=1b4675258aba304e897420b8b0418325&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=ad153113b0bdffc648d2085d2a7cb68e&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=ad153113b0bdffc648d2085d2a7cb68e&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</description><category>开源产品</category><pubDate>Mon, 08 Feb 2010 22:03:00 +0800</pubDate><author>nlfd</author><comments>http://iamcaihuafeng.blog.sohu.com/144111650.html#comment</comments><guid isPermaLink="false">http://iamcaihuafeng.blog.sohu.com/144111650.html</guid><dc:creator>nlfd</dc:creator><fs:srclink>http://iamcaihuafeng.blog.sohu.com/144111650.html</fs:srclink><fs:srcfeed>http://iamcaihuafeng.blog.sohu.com/rss</fs:srcfeed><fs:itemid>feedsky/sohublog/~7143576/331034704/5252344</fs:itemid></item><item><title>在CentOS下安装及配置lastfmfpclient</title><link>http://iamcaihuafeng.blog.sohu.com/144110863.html</link><description>&lt;div style=&quot;line-height:160%;font-size:14px;&quot;&gt;&lt;font&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;1.安装&lt;/span&gt;&lt;/span&gt;&lt;/font&gt;&lt;a href=&quot;http://last.fm/&quot; target=&quot;_blank&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;last.fm&lt;/span&gt;&lt;/a&gt;&lt;font&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;提供的音频指纹工具&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;wget http://cdn.last.fm/fingerprints/lastfm.fpclient.beta2.1.linux-32.zip&lt;br /&gt;[root@CentOS_Test_Server software]# unzip lastfm.fpclient.beta2.1.linux-32.zip&lt;br /&gt;Archive:&amp;nbsp; lastfm.fpclient.beta2.1.linux-32.zip&lt;br /&gt;&amp;nbsp;&amp;nbsp; creating: lastfm.fpclient.beta2.linux-32/&lt;br /&gt;&amp;nbsp; inflating: lastfm.fpclient.beta2.linux-32/lastfmfpclient&lt;br /&gt;&amp;nbsp; inflating: lastfm.fpclient.beta2.linux-32/readme.txt&lt;br /&gt;&lt;br /&gt;&amp;nbsp;解压后执行./lastfmfpclient报错，提示缺少一些依赖包。&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;2.安装libmad&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;libmad的介绍如下：&lt;br /&gt;&lt;/span&gt;&lt;/font&gt;&lt;div style=&quot;margin-left: 40px;&quot;&gt;&lt;font&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;Introduction&lt;/span&gt;&lt;/font&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;font&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;MAD is a high-quality MPEG audio decoder. It currently supports MPEG-1 and the MPEG-2 extension to lower sampling frequencies, as well as the de facto MPEG 2.5 format. All three audio layers &amp;mdash; Layer I, Layer II, and Layer III (i.e. MP3) &amp;mdash; are fully implemented. &lt;/span&gt;&lt;/font&gt;&lt;a href=&quot;http://www.underbit.com/products/mad/&quot; target=&quot;_blank&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;Via&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;font&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;[root@CentOS_Test_Server lastfm.fpclient.beta2.linux-32]# wget http://dag.wieers.com/rpm/packages/libmad/libmad-0.15.1b-3.0.rh8.dag.i386.rpm&lt;br /&gt;&lt;br /&gt;[root@CentOS_Test_Server lastfm.fpclient.beta2.linux-32]# ls&lt;br /&gt;lastfmfpclient&amp;nbsp; libmad-0.15.1b-3.0.rh8.dag.i386.rpm&amp;nbsp; readme.txt&lt;br /&gt;[root@CentOS_Test_Server lastfm.fpclient.beta2.linux-32]# rpm -ivh libmad-0.15.1b-3.0.rh8.dag.i386.rpm&lt;br /&gt;warning: libmad-0.15.1b-3.0.rh8.dag.i386.rpm: Header V3 DSA signature: NOKEY, key ID 6b8d79e6&lt;br /&gt;Preparing...&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ########################################### [100%]&lt;br /&gt;&amp;nbsp;&amp;nbsp; 1:libmad&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ########################################### [100%]&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;3.安装libtag&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/font&gt;&lt;div style=&quot;margin-left: 40px;&quot;&gt;&lt;font&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;TagLib Audio Meta-Data Library&lt;/span&gt;&lt;/font&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;font&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;TagLib is a library for reading and editing the meta-data of several popular audio formats. Currently it supports both ID3v1 and ID3v2 for MP3 files, Ogg Vorbis comments and ID3 tags and Vorbis comments in FLAC, MPC, Speex, WavPack and TrueAudio files. &lt;/span&gt;&lt;/font&gt;&lt;a href=&quot;http://developer.kde.org/%7Ewheeler/taglib.html&quot; target=&quot;_blank&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;Via&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;font&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;wget http://developer.kde.org/~wheeler/files/src/taglib-1.6.1.tar.gz&lt;br /&gt;tar zxvf taglib-1.6.1.tar.gz&lt;br /&gt;cd taglib-1.6.1&lt;br /&gt;./configure&lt;br /&gt;make &amp;amp;&amp;amp; make install&lt;br /&gt;&lt;br /&gt;libtag的库文件默认安装在/usr/local/lib目录下&lt;br /&gt;[root@CentOS_Test_Server lastfm.fpclient.beta2.linux-32]# ls -l /usr/local/lib/*tag*&lt;br /&gt;-rwxr-xr-x 1 root root&amp;nbsp;&amp;nbsp;&amp;nbsp; 810 Feb&amp;nbsp; 6 06:04 /usr/local/lib/libtag_c.la&lt;br /&gt;lrwxrwxrwx 1 root root&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 17 Feb&amp;nbsp; 6 06:04 /usr/local/lib/libtag_c.so -&amp;gt; libtag_c.so.0.0.0&lt;br /&gt;lrwxrwxrwx 1 root root&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 17 Feb&amp;nbsp; 6 06:04 /usr/local/lib/libtag_c.so.0 -&amp;gt; libtag_c.so.0.0.0&lt;br /&gt;-rwxr-xr-x 1 root root&amp;nbsp; 18742 Feb&amp;nbsp; 6 06:04 /usr/local/lib/libtag_c.so.0.0.0&lt;br /&gt;-rwxr-xr-x 1 root root&amp;nbsp;&amp;nbsp;&amp;nbsp; 773 Feb&amp;nbsp; 6 06:04 /usr/local/lib/libtag.la&lt;br /&gt;lrwxrwxrwx 1 root root&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 15 Feb&amp;nbsp; 6 06:04 /usr/local/lib/libtag.so -&amp;gt; libtag.so.1.7.0&lt;br /&gt;lrwxrwxrwx 1 root root&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 15 Feb&amp;nbsp; 6 06:04 /usr/local/lib/libtag.so.1 -&amp;gt; libtag.so.1.7.0&lt;br /&gt;-rwxr-xr-x 1 root root 626356 Feb&amp;nbsp; 6 06:04 /usr/local/lib/libtag.so.1.7.0&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-weight: bold; color: rgb(255, 0, 0);&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;安装完成以后，修改/etc/ld.so.conf，加入一行/usr/local/lib&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-weight: bold; color: rgb(255, 0, 0);&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;[root@CentOS_Test_Server lastfm.fpclient.beta2.linux-32]# cat /etc/ld.so.conf&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-weight: bold; color: rgb(255, 0, 0);&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;/usr/local/lib&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-weight: bold; color: rgb(255, 0, 0);&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;include ld.so.conf.d/*.conf&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-weight: bold; color: rgb(255, 0, 0);&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;然后再执行ldconfig，更新/etc/ld.so.cache文件&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;&lt;br /&gt;生成的cache文件里面能匹配libtag&lt;br /&gt;[root@CentOS_Test_Server lastfm.fpclient.beta2.linux-32]# grep libtag /etc/ld.so.cache&lt;br /&gt;Binary file /etc/ld.so.cache matches&lt;br /&gt;&lt;br /&gt;如果不执行以上几步操作，则执行./lastfmfpclient时还是会报找不到libtag的错误。&lt;br /&gt;&lt;br /&gt;而如果直接是用&lt;/span&gt;&lt;span style=&quot;font-weight: bold; color: rgb(255, 0, 0);&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;yum install 包名&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;安装rpm包，则一般情况不用修改/etc/ld.so.conf及进行ldconfig的操作，因为操作系统默认已经知道了。&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;4.安装libsamplerate&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;[root@CentOS_Test_Server lastfm.fpclient.beta2.linux-32]# wget http://dag.wieers.com/rpm/packages/libsamplerate/libsamplerate-0.1.2-1.0.rh7.dag.i386.rpm&lt;br /&gt;[root@CentOS_Test_Server lastfm.fpclient.beta2.linux-32]# ls&lt;br /&gt;lastfmfpclient&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; libsamplerate-0.1.2-1.0.rh7.dag.i386.rpm&amp;nbsp; taglib-1.6.1&lt;br /&gt;libmad-0.15.1b-3.0.rh8.dag.i386.rpm&amp;nbsp; readme.txt&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; taglib-1.6.1.tar.gz&lt;br /&gt;[root@CentOS_Test_Server lastfm.fpclient.beta2.linux-32]# rpm -ivh libsamplerate-0.1.2-1.0.rh7.dag.i386.rpm&lt;br /&gt;warning: libsamplerate-0.1.2-1.0.rh7.dag.i386.rpm: Header V3 DSA signature: NOKEY, key ID 6b8d79e6&lt;br /&gt;error: Failed dependencies:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;libsndfile.so.1 is needed by libsamplerate-0.1.2-1.0.rh7.dag.i386&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;&lt;br /&gt;提示错误信息，libsamplerate需要libsndfile&lt;br /&gt;&lt;br /&gt;-------------------------------&lt;br /&gt;[root@CentOS_Test_Server lastfm.fpclient.beta2.linux-32]# wget http://dag.wieers.com/rpm/packages/libsndfile/libsndfile-1.0.10-2.0.rh8.dag.i386.rpm&lt;br /&gt;--06:18:39--&amp;nbsp; http://dag.wieers.com/rpm/packages/libsndfile/libsndfile-1.0.10-2.0.rh8.dag.i386.rpm&lt;br /&gt;[root@CentOS_Test_Server lastfm.fpclient.beta2.linux-32]# rpm -ivh libsndfile-1.0.10-2.0.rh8.dag.i386.rpm&lt;br /&gt;warning: libsndfile-1.0.10-2.0.rh8.dag.i386.rpm: Header V3 DSA signature: NOKEY, key ID 6b8d79e6&lt;br /&gt;Preparing...&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ########################################### [100%]&lt;br /&gt;&amp;nbsp;&amp;nbsp; 1:libsndfile&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ########################################### [100%]&lt;br /&gt;&lt;br /&gt;[root@CentOS_Test_Server lastfm.fpclient.beta2.linux-32]# rpm -ivh libsamplerate-0.1.2-1.0.rh7.dag.i386.rpm&lt;br /&gt;warning: libsamplerate-0.1.2-1.0.rh7.dag.i386.rpm: Header V3 DSA signature: NOKEY, key ID 6b8d79e6&lt;br /&gt;Preparing...&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ########################################### [100%]&lt;br /&gt;&amp;nbsp;&amp;nbsp; 1:libsamplerate&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ########################################### [100%]&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;5.lastfmfpclient的使用&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;[root@CentOS_Test_Server lastfm.fpclient.beta2.linux-32]# ./lastfmfpclient&lt;br /&gt;./lastfmfpclient: /usr/lib/libcurl.so.3: no version information available (required by ./lastfmfpclient)&lt;br /&gt;lastfmfpclient (FP Beta 1.45)&lt;br /&gt;A minimal fingerprint client, public release.&lt;br /&gt;Copyright (C) 2007-2008 by Last.fm (MIR) - Build: Mar 25 2008 (10:27:33)&lt;br /&gt;&lt;br /&gt;Usage:&lt;br /&gt;lastfmfpclient yourMp3File.mp3&lt;br /&gt;or&lt;br /&gt;lastfmfpclient -nometadata yourMp3File.mp3&lt;br /&gt;or&lt;br /&gt;lastfmfpclient -url yourMp3File.mp3&lt;br /&gt;(will output the url of the metadata)&lt;br /&gt;&lt;br /&gt;[root@CentOS_Test_Server lastfm.fpclient.beta2.linux-32]# ./lastfmfpclient http://f.mp3cn.net/cb/11/cb11a75fd33adc4a16de34ce12429730.mp3&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;./lastfmfpclient: /usr/lib/libcurl.so.3: no version information available (required by ./lastfmfpclient)&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;ERROR: Cannot find file &amp;lt;http://f.mp3cn.net/cb/11/cb11a75fd33adc4a16de34ce12429730.mp3&amp;gt;!&lt;br /&gt;&lt;br /&gt;执行lastfmfpclient命令时还是报错，重新下载libcurl&lt;br /&gt;&lt;br /&gt;wget http://curl.freeby.pctools.cl/download/libcurl4-devel-7.19.7-1.i386.rpm&lt;br /&gt;&lt;br /&gt;在Debian下测试了一下last.fm提供的lastfmfpclient，有时候能正常获取fid(即指纹id)，有时候却不能，原来能正常获取指纹id的一直返回-1 FAIL，不知道是什么原因，调用命令行lastfmfpclient可能是在连接last.fm的服务器，因为有时候比较慢，有时候需要三、四十秒才会返回结果。&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;看来lastfmfpclient也不太靠谱，也许要找另外一个工具了。&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;6.总结&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;在Debian下面安装lastfmfpclient非常简单，用readme.txt中说明的命令安装就可以了。而在CentOS下面安装非常复杂，用&amp;ldquo;yum install 包名&amp;rdquo;进行安装时总时提示找不到对应的包。&lt;br /&gt;&lt;br /&gt;[root@CentOS_Test_Server lastfm.fpclient.beta2.linux-32]# yum install libtag1c2a&lt;br /&gt;Setting up Install Process&lt;br /&gt;Parsing package install arguments&lt;br /&gt;No package libtag1c2a available.&lt;br /&gt;Nothing to do&lt;br /&gt;&lt;br /&gt;[root@CentOS_Test_Server lastfm.fpclient.beta2.linux-32]# cat readme.txt&lt;br /&gt;If it does not run, you might need to install the following libs:&lt;br /&gt;&lt;br /&gt;libtag, libmad, libcurl&lt;br /&gt;&lt;br /&gt;here's how to install them:&lt;br /&gt;su&lt;br /&gt;apt-get install libtag1c2a&lt;br /&gt;apt-get install libcurl3&lt;br /&gt;apt-get install libmad0&lt;br /&gt;&lt;br /&gt;possibly also&lt;br /&gt;apt-get install fftw3&lt;br /&gt;apt-get install libsamplerate0&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style=&quot;font-weight: bold;&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;我的相关日志：&lt;/span&gt;&lt;/div&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;2010-02-01&amp;nbsp;|&amp;nbsp;&lt;/span&gt;&lt;a href=&quot;http://iamcaihuafeng.blog.sohu.com/143670908.html&quot; target=&quot;_blank&quot; title=&quot;在CentOS5.2下安装PHP的id3扩展&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;在CentOS5.2下安装PHP的id3扩展&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;2010-01-17&amp;nbsp;|&amp;nbsp;&lt;/span&gt;&lt;a href=&quot;http://iamcaihuafeng.blog.sohu.com/142463995.html&quot; target=&quot;_blank&quot; title=&quot;解决CentOS下安装ffmpeg时的错误&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;解决CentOS下安装ffmpeg时的错误&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;2009-12-14&amp;nbsp;|&amp;nbsp;&lt;/span&gt;&lt;a href=&quot;http://iamcaihuafeng.blog.sohu.com/139613701.html&quot; target=&quot;_blank&quot; title=&quot;在Debian下安装lame及ffmpeg&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;在Debian下安装lame及ffmpeg&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;2010-01-29&amp;nbsp;|&amp;nbsp;&lt;/span&gt;&lt;a href=&quot;http://iamcaihuafeng.blog.sohu.com/143419334.html&quot; target=&quot;_blank&quot; title=&quot;计算mp3文件的播放时间&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;计算mp3文件的播放时间&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;2010-01-22&amp;nbsp;|&amp;nbsp;&lt;/span&gt;&lt;a href=&quot;http://iamcaihuafeng.blog.sohu.com/142873981.html&quot; target=&quot;_blank&quot; title=&quot;增量抓取音乐程序&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;增量抓取音乐程序&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/331034705/sohublog/feedsky/s.gif?r=http://iamcaihuafeng.blog.sohu.com/144110863.html&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/sohublog/331034705/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/sohublog/331034705/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=125cf5dd1b753d7f85025855ca7d15d2&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=125cf5dd1b753d7f85025855ca7d15d2&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=ad2a4960b47e7bf371f4e48cf560e9f2&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=ad2a4960b47e7bf371f4e48cf560e9f2&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=1c62f4c997d6b9bec3b9a83f19a19b81&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=1c62f4c997d6b9bec3b9a83f19a19b81&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=72a68486a61235a17f2b44dd96268177&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=72a68486a61235a17f2b44dd96268177&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=4fde28df35b7c5310c9b3a22be18916e&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=4fde28df35b7c5310c9b3a22be18916e&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=c831b1a8b146c8870fa2ed719bdf9d1a&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=c831b1a8b146c8870fa2ed719bdf9d1a&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=acba443102992262d4e8d1eca02be6ea&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=acba443102992262d4e8d1eca02be6ea&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=2506f365c1c39890aeadb26498de841c&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=2506f365c1c39890aeadb26498de841c&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</description><category>开源产品</category><pubDate>Mon, 08 Feb 2010 21:41:01 +0800</pubDate><author>nlfd</author><comments>http://iamcaihuafeng.blog.sohu.com/144110863.html#comment</comments><guid isPermaLink="false">http://iamcaihuafeng.blog.sohu.com/144110863.html</guid><dc:creator>nlfd</dc:creator><fs:srclink>http://iamcaihuafeng.blog.sohu.com/144110863.html</fs:srclink><fs:srcfeed>http://iamcaihuafeng.blog.sohu.com/rss</fs:srcfeed><fs:itemid>feedsky/sohublog/~7143576/331034705/5252344</fs:itemid></item><item><title>Chrome + Proxy Switchy! + Puff实现翻墙</title><link>http://iamcaihuafeng.blog.sohu.com/143998411.html</link><description>&lt;div style=&quot;line-height: 160%; font-size: 14px;&quot;&gt;&lt;font&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;在&lt;/span&gt;&lt;a href=&quot;https://chrome.google.com/extensions/detail/caehdcpeofiiigpdhbabniblemipncjj&quot; target=&quot;_blank&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;这儿&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;下载Proxy Switchy!，然后安装到Chrome中。&lt;br /&gt;&lt;br /&gt;到 &lt;/span&gt;&lt;a href=&quot;http://autoproxy2pac.appspot.com/&quot; target=&quot;_blank&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;AutoProxy 2 PAC&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;项目首页下载与你所使用的代理服务器对应的 PAC 文件，或获取在线版本，我获取的是在线版本，地址为&lt;/span&gt;&lt;a href=&quot;http://autoproxy2pac.appspot.com/pac/puff&quot; target=&quot;_blank&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;http://autoproxy2pac.appspot.com/pac/puff&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;。&lt;br /&gt;&lt;/span&gt;&lt;img src=&quot;http://1854.img.pp.sohu.com.cn/images/2010/2/6/19/11/12753eb2c09g215.jpg&quot; style=&quot;margin: 0px auto 10px; display: block; text-align: center;&quot; alt=&quot;&quot; border=&quot;0&quot; /&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;将获取的在线版本地址填到Online Rule List中，相关的配置如下。&lt;br /&gt;&lt;/span&gt;&lt;img src=&quot;http://1854.img.pp.sohu.com.cn/images/2010/2/6/19/11/12753eb2c77g215.jpg&quot; style=&quot;margin: 0px auto 10px; display: block; text-align: center;&quot; alt=&quot;&quot; border=&quot;0&quot; /&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/font&gt;&lt;img src=&quot;http://1804.img.pp.sohu.com.cn/images/2010/2/7/17/28/12758975388g215.jpg&quot; style=&quot;margin: 0px auto 10px; display: block; text-align: center;&quot; alt=&quot;&quot; border=&quot;0&quot; /&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;font&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;pac是Proxy Auto Config的简称，通俗理解就是代理的配置文件，也就是说，当你在浏览器中输入的网址匹配pac文件中规则时，则使用代理服务器访问(&lt;/span&gt;&lt;span style=&quot;font-weight: bold; color: rgb(255, 0, 0);&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;也可以理解为翻墙&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;)，不匹配的则不使用代理服务器访问。&lt;br /&gt;&lt;br /&gt;访问网站时怎么判断你是用代理服务器访问还是没用代理服务器访问的呢？如果你能正常访问twitter、facebook、youtube等这些在墙外的网站，说明你是通过代理服务器访问的。如果你访问&lt;/span&gt;&lt;/font&gt;&lt;a href=&quot;http://www.ip138.com/&quot; target=&quot;_blank&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;www.ip138.com&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;时&lt;/span&gt;&lt;font&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;上面显示的ip地址与你的网络接入商（比如北京网通)上面的ip地址一致(在浏览器中输入&lt;/span&gt;&lt;/font&gt;&lt;a href=&quot;http://192.168.1.1/&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;http://192.168.1.1/&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;一般可以看到ip地址&lt;/span&gt;&lt;font&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;)，&lt;/span&gt;&lt;span style=&quot;color: rgb(255, 0, 0);&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;说明你没有通过代理服务器访问，这是正常的现象&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;，如果在墙内的网站也是通过代理服务器访问，那速度是有点慢的;&lt;/span&gt;&lt;span style=&quot;color: rgb(255, 0, 0);&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;如果访问www.ip138.com时上面显示的ip地址与你的网络接入商上面的ip地址不一致，说明你的配置不正确，说明你是在通过代理服务器访问墙内的网站&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;。翻墙的工具主要是为了访问那些在墙外的网站，而不是为了访问墙内的网站。&lt;br /&gt;&lt;br /&gt;pac的部分内容如下：&lt;br /&gt;/*&lt;br /&gt;&amp;nbsp;* Proxy Auto-Config file generated by autoproxy2pac&lt;br /&gt;&amp;nbsp;*&amp;nbsp; Rule source: http://autoproxy-gfwlist.googlecode.com/svn/trunk/gfwlist.txt&lt;br /&gt;&amp;nbsp;*&amp;nbsp; Last update: Sat, 06 Feb 2010 06:00:46 GMT&lt;br /&gt;&amp;nbsp;*/&lt;br /&gt;function FindProxyForURL(url, host) {&lt;br /&gt;&amp;nbsp; PROXY = &amp;quot;PROXY 127.0.0.1:1984&amp;quot;;&lt;br /&gt;&amp;nbsp; DEFAULT = &amp;quot;DIRECT&amp;quot;;&lt;br /&gt;&lt;br /&gt;&amp;nbsp; //-- AUTO-GENERATED RULES, DO NOT MODIFY!&lt;br /&gt;&amp;nbsp; if(/^[\w\-]+:\/+(?!\/)(?:[^\/]+\.)?stats\.wordpress\.com/i.test(url)) return DEFAULT;&lt;br /&gt;&amp;nbsp; if(/^http\:\/\/s3\.wordpress\.com/i.test(url)) return DEFAULT;&lt;br /&gt;&amp;nbsp; if(/^http\:\/\/s2\.wordpress\.com/i.test(url)) return DEFAULT;&lt;br /&gt;&amp;nbsp; if(/^http\:\/\/s1\.wordpress\.com/i.test(url)) return DEFAULT;&lt;br /&gt;....&lt;br /&gt;&lt;br /&gt;从此，在Chrom浏览器里面，对你来说，就无墙了。&lt;br /&gt;&lt;br /&gt;参考：&lt;br /&gt;在 Chrome + Switchy 下使用 AutoProxy gfwList PAC，&lt;span style=&quot;text-decoration: underline;&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;a href=&quot;http://autoproxy.org/zh-CN/node/61&quot; target=&quot;_blank&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;http://autoproxy.org/zh-CN/node/61&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;Firefox, Chrome, IE说: 由AutoProxy决定用不用梯子，&lt;/span&gt;&lt;a href=&quot;http://zww.me/archives/25050&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;http://zww.me/archives/25050&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/331034706/sohublog/feedsky/s.gif?r=http://iamcaihuafeng.blog.sohu.com/143998411.html&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/sohublog/331034706/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/sohublog/331034706/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=64edfe85557aa9aba17434ac425bb1ab&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=64edfe85557aa9aba17434ac425bb1ab&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=21f2340a59afa363f5d9cd0d295f52f9&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=21f2340a59afa363f5d9cd0d295f52f9&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=4c8895ed2db88a2e9422d1adaf8c6e35&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=4c8895ed2db88a2e9422d1adaf8c6e35&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=927a1a9b5c35be6867a9e8236200ef12&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=927a1a9b5c35be6867a9e8236200ef12&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=8c7484aa4ef8fe3b4cecb1367acb9a36&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=8c7484aa4ef8fe3b4cecb1367acb9a36&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=70b2b09a7ced00e7f0abbd34d36c5ef7&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=70b2b09a7ced00e7f0abbd34d36c5ef7&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=decb1a7ce22847c56c64357e48aedfb7&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=decb1a7ce22847c56c64357e48aedfb7&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=4c96ad53f64b7aacab3619fb8f377b26&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=4c96ad53f64b7aacab3619fb8f377b26&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</description><category>软件及在线应用</category><pubDate>Sun, 07 Feb 2010 17:43:15 +0800</pubDate><author>nlfd</author><comments>http://iamcaihuafeng.blog.sohu.com/143998411.html#comment</comments><guid isPermaLink="false">http://iamcaihuafeng.blog.sohu.com/143998411.html</guid><dc:creator>nlfd</dc:creator><fs:srclink>http://iamcaihuafeng.blog.sohu.com/143998411.html</fs:srclink><fs:srcfeed>http://iamcaihuafeng.blog.sohu.com/rss</fs:srcfeed><fs:itemid>feedsky/sohublog/~7143576/331034706/5252344</fs:itemid></item><item><title>试用Google Chrome 4.0</title><link>http://iamcaihuafeng.blog.sohu.com/143994538.html</link><description>&lt;div style=&quot;line-height:160%;font-size:14px;&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;今天看了文章&lt;/span&gt;&lt;a href=&quot;http://wangyueblog.com/2010/02/03/why-choose-google-chrome/&quot; target=&quot;_blank&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;我为什么使用 Google Chrome 浏览器&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;后，对Chrom浏览器也动了心，原来只是在Google第一次发布Chrome的时候试用过一段时间，觉得不太好，就没有使用了。&lt;/span&gt;&lt;div&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;现在Chrome已经发布了4.0版本，功能及性能有了很大的改进，而且也有了很多扩展，特别是速度要比Firefox快得多，内存占用比Firefox要少。&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;在&lt;/span&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;a href=&quot;http://www.google.com/ncr&quot; target=&quot;_blank&quot;&gt;Google&lt;/a&gt;输入chrome(为了不让跳转到www.google.cn，输入&lt;/span&gt;&lt;a href=&quot;http://www.google.com/ncr&quot; target=&quot;_blank&quot;&gt;&lt;span style=&quot;font-size: medium; &quot;&gt;www.google.com/ncr&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;即可)，搜索结果的第一项就是chrome英文版的链接，进入Chrome的页面以后，下载Chrome浏览器的离线版，双击下载的exe文件安装即可。&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style=&quot;font-weight: bold;&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;我的相关日志：&lt;/span&gt;&lt;/div&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;2009-12-09&amp;nbsp;|&amp;nbsp;&lt;/span&gt;&lt;a href=&quot;http://iamcaihuafeng.blog.sohu.com/139208883.html&quot; target=&quot;_blank&quot; title=&quot;备份博客文章&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;备份博客文章&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;2009-06-10&amp;nbsp;|&amp;nbsp;&lt;/span&gt;&lt;a href=&quot;http://iamcaihuafeng.blog.sohu.com/118284898.html&quot; target=&quot;_blank&quot; title=&quot;关于对域名解析的一点理解&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;关于对域名解析的一点理解&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;2008-12-02&amp;nbsp;|&amp;nbsp;&lt;/span&gt;&lt;a href=&quot;http://iamcaihuafeng.blog.sohu.com/105721782.html&quot; target=&quot;_blank&quot; title=&quot;图片禁止外链，能正常显示禁止外链的图片吗？可以&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;图片禁止外链，能正常显示禁止外链的图片吗？可以&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;br /&gt;2008-09-26&amp;nbsp;|&amp;nbsp;&lt;/span&gt;&lt;a href=&quot;http://iamcaihuafeng.blog.sohu.com/100734995.html&quot; target=&quot;_blank&quot; title=&quot;我使用的互联网服务 - Google篇&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;我使用的互联网服务 - Google篇&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/331034707/sohublog/feedsky/s.gif?r=http://iamcaihuafeng.blog.sohu.com/143994538.html&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/sohublog/331034707/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/sohublog/331034707/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=55df8d48fee3c35d64f137205f67057f&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=55df8d48fee3c35d64f137205f67057f&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=400a239e0845b31e1a305f368437660f&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=400a239e0845b31e1a305f368437660f&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=bacab546d0399e13554f5637b1389de1&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=bacab546d0399e13554f5637b1389de1&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=21a8fc221cfae97b979d3c9a26d0922a&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=21a8fc221cfae97b979d3c9a26d0922a&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=12569d6a92f99f56d0b2ab895c564264&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=12569d6a92f99f56d0b2ab895c564264&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=ca4e1cc8ad1dcb9113deac21ce478f36&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=ca4e1cc8ad1dcb9113deac21ce478f36&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=f4f62db58422e570fd740555c764d1b9&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=f4f62db58422e570fd740555c764d1b9&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=364ed8155feb65609f2eeb5207e10199&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=364ed8155feb65609f2eeb5207e10199&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</description><category>软件及在线应用</category><pubDate>Sat, 06 Feb 2010 18:09:34 +0800</pubDate><author>nlfd</author><comments>http://iamcaihuafeng.blog.sohu.com/143994538.html#comment</comments><guid isPermaLink="false">http://iamcaihuafeng.blog.sohu.com/143994538.html</guid><dc:creator>nlfd</dc:creator><fs:srclink>http://iamcaihuafeng.blog.sohu.com/143994538.html</fs:srclink><fs:srcfeed>http://iamcaihuafeng.blog.sohu.com/rss</fs:srcfeed><fs:itemid>feedsky/sohublog/~7143576/331034707/5252344</fs:itemid></item><item><title>怎样尽可能的避免请求是的空数据？</title><link>http://iamcaihuafeng.blog.sohu.com/143672733.html</link><description>&lt;div style=&quot;line-height:160%;font-size:14px;&quot;&gt;&lt;div style=&quot;FONT-SIZE: 14px; LINE-HEIGHT: 160%&quot;&gt;&lt;font size=&quot;3&quot;&gt;在最近的一个项目中，当请求某个url时，有时有可能会返回空的数据，用curl -I查看此url后发现用的是CDN缓存。&lt;br /&gt;&lt;br /&gt;将程序调整了一下，就是如果请求某个url为空时，随机传入一个随机数，然后再递归调用函数本身，然后请求的数据就不为空了，看来当请求某个url为空时往url后面传入一个随机数是比较好的方式。&lt;br /&gt;&lt;br /&gt;如果不传入随机数，则如果缓存在有效期内，则返回的是缓存里面的数据(当缓存服务器比较繁忙或出问题的时候，有可能返回的内容就是空的了)，而如果传入一个随机数，则因为此缓存不存在，所以访问的是真实的服务器，也许真实服务器就可以返回正确的内容了。&lt;/font&gt;&lt;/div&gt;
&lt;p&gt;&lt;font size=&quot;3&quot;&gt;&lt;/font&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;font size=&quot;3&quot;&gt;大致的算法如下：&lt;/font&gt;&lt;/p&gt;&lt;font size=&quot;3&quot;&gt;
&lt;p&gt;/**&lt;br /&gt;&amp;nbsp;* 生成随机数&lt;br /&gt;&amp;nbsp;* &lt;br /&gt;&amp;nbsp;* @param int $length&amp;nbsp; 生成的随机数的长度&lt;br /&gt;&amp;nbsp;* @param int $numeric 是否生成数字随机数的标志&lt;br /&gt;&amp;nbsp;*/&lt;br /&gt;function random($length, $numeric = 0) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PHP_VERSION &amp;lt; '4.2.0' &amp;amp;&amp;amp; mt_srand((double)microtime() * 1000000);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if($numeric) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; $hash = sprintf('%0'.$length.'d', mt_rand(0, pow(10, $length) - 1));&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; } else {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; $hash = '';&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; $chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz';&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; $max = strlen($chars) - 1;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for($i = 0; $i &amp;lt; $length; $i++) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; $hash .= $chars[mt_rand(0, $max)];&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return $hash;&lt;br /&gt;}&lt;/p&gt;
&lt;p&gt;function addRandomForUrl($url) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (empty($url)) return false;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; $r = random(32);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return strstr($url, 'r=') ? preg_replace(&amp;quot;/r=[0-9a-zA-Z]{32}/&amp;quot;, 'r='.$r, $url) : (strstr($url, '?') ? $url . '&amp;amp;r='.$r : $url . '?r='.$r);&lt;br /&gt;}&lt;br /&gt;&lt;/p&gt;
&lt;div style=&quot;FONT-SIZE: 14px; LINE-HEIGHT: 160%&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;/font&gt;
&lt;div style=&quot;FONT-WEIGHT: bold; FONT-SIZE: 14px; LINE-HEIGHT: 160%&quot;&gt;&lt;font size=&quot;3&quot;&gt;我的相关日志：&lt;/font&gt;&lt;/div&gt;
&lt;div style=&quot;FONT-SIZE: 14px; LINE-HEIGHT: 160%&quot;&gt;&lt;br /&gt;&lt;font size=&quot;3&quot;&gt;2010-01-23&amp;nbsp;|&amp;nbsp;&lt;/font&gt;&lt;a title=&quot;递归在请求远程URL时的应用&quot; href=&quot;http://iamcaihuafeng.blog.sohu.com/142999772.html&quot; target=&quot;_blank&quot;&gt;&lt;font size=&quot;3&quot;&gt;递归在请求远程URL时的应用&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;font size=&quot;3&quot;&gt;2010-01-16&amp;nbsp;|&amp;nbsp;&lt;/font&gt;&lt;a title=&quot;安全请求程序(三)&quot; href=&quot;http://iamcaihuafeng.blog.sohu.com/142433596.html&quot; target=&quot;_blank&quot;&gt;&lt;font size=&quot;3&quot;&gt;安全请求程序(三)&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;font size=&quot;3&quot;&gt;2010-01-09&amp;nbsp;|&amp;nbsp;&lt;/font&gt;&lt;a title=&quot;安全请求程序(二)&quot; href=&quot;http://iamcaihuafeng.blog.sohu.com/141816354.html&quot; target=&quot;_blank&quot;&gt;&lt;font size=&quot;3&quot;&gt;安全请求程序(二)&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;font size=&quot;3&quot;&gt;2010-01-09&amp;nbsp;|&amp;nbsp;&lt;/font&gt;&lt;a title=&quot;安全请求程序&quot; href=&quot;http://iamcaihuafeng.blog.sohu.com/141793047.html&quot; target=&quot;_blank&quot;&gt;&lt;font size=&quot;3&quot;&gt;安全请求程序&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;font size=&quot;3&quot;&gt;2010-02-01&amp;nbsp;|&amp;nbsp;&lt;/font&gt;&lt;a title=&quot;在CentOS5.2下安装PHP的id3扩展&quot; href=&quot;http://iamcaihuafeng.blog.sohu.com/143670908.html&quot; target=&quot;_blank&quot;&gt;&lt;font size=&quot;3&quot;&gt;在CentOS5.2下安装PHP的id3扩展&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;font size=&quot;3&quot;&gt;2010-01-22&amp;nbsp;|&amp;nbsp;&lt;/font&gt;&lt;a title=&quot;增量抓取音乐程序&quot; href=&quot;http://iamcaihuafeng.blog.sohu.com/142873981.html&quot; target=&quot;_blank&quot;&gt;&lt;font size=&quot;3&quot;&gt;增量抓取音乐程序&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;font size=&quot;3&quot;&gt;2009-12-20&amp;nbsp;|&amp;nbsp;&lt;/font&gt;&lt;a title=&quot;SOSO音乐通过MediaPlayer支持wma&quot; href=&quot;http://iamcaihuafeng.blog.sohu.com/140066281.html&quot; target=&quot;_blank&quot;&gt;&lt;font size=&quot;3&quot;&gt;SOSO音乐通过MediaPlayer支持wma&lt;/font&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/331034708/sohublog/feedsky/s.gif?r=http://iamcaihuafeng.blog.sohu.com/143672733.html&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/sohublog/331034708/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/sohublog/331034708/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=63589b3502e3af0d365363e75aa2716c&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=63589b3502e3af0d365363e75aa2716c&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=dd8c92f68ebe61bd637ef04ceadd31b5&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=dd8c92f68ebe61bd637ef04ceadd31b5&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=92ee3875d8b3cd6e36e9e2e79f0ca0e3&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=92ee3875d8b3cd6e36e9e2e79f0ca0e3&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=b4ef79708a999ddb7d6571a16e45fa58&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=b4ef79708a999ddb7d6571a16e45fa58&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=000bcb281c2c81a5ac57d91bbea9bf09&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=000bcb281c2c81a5ac57d91bbea9bf09&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=2bed723c0e46a6f081381cdc7598f55f&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=2bed723c0e46a6f081381cdc7598f55f&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=2b6b7f694d53cb39604d9ae67e5d208b&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=2b6b7f694d53cb39604d9ae67e5d208b&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=5dfa3f9cb9848d8b08514447e8a8d74f&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=5dfa3f9cb9848d8b08514447e8a8d74f&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</description><category>其它技术</category><pubDate>Wed, 03 Feb 2010 02:57:47 +0800</pubDate><author>nlfd</author><comments>http://iamcaihuafeng.blog.sohu.com/143672733.html#comment</comments><guid isPermaLink="false">http://iamcaihuafeng.blog.sohu.com/143672733.html</guid><dc:creator>nlfd</dc:creator><fs:srclink>http://iamcaihuafeng.blog.sohu.com/143672733.html</fs:srclink><fs:srcfeed>http://iamcaihuafeng.blog.sohu.com/rss</fs:srcfeed><fs:itemid>feedsky/sohublog/~7143576/331034708/5252344</fs:itemid></item><item><title>在CentOS5.2下安装PHP的id3扩展</title><link>http://iamcaihuafeng.blog.sohu.com/143670908.html</link><description>&lt;div style=&quot;FONT-SIZE: 14px; LINE-HEIGHT: 160%&quot;&gt;&lt;font size=&quot;3&quot;&gt;ID3通俗来理解就是附加到mp3文件中的歌曲元数据。PHP有一个id3的扩展，用来获取mp3文件的id3信息。&lt;/font&gt;
&lt;div style=&quot;MARGIN-LEFT: 40px&quot;&gt;&lt;br /&gt;&lt;font size=&quot;3&quot;&gt;&lt;span style=&quot;FONT-WEIGHT: bold&quot;&gt;ID3标签是MP3音乐档案中的歌曲附加讯息，它能够在MP3中附加曲子的演出者、作者以及其它类别资讯，方便众多乐曲的管理&lt;/span&gt;。缺少ID3标签并不会影响 MP3的播放，但若没有的话，管理音乐文件也会相当的麻烦。如果你在网上download MP3，里面多半已经写有预设的ID3讯息。如果你想要将其清除重设，使用WinAMP中的&amp;ldquo;Alt + 3&amp;rdquo;热键，就能修改MP3档案中之的ID3标签。&lt;br /&gt;　　ID3，一般是位于一个mp3文件的开头或末尾的若干字节内，附加了关于该&lt;/font&gt;&lt;a href=&quot;http://baike.baidu.com/view/1310.htm&quot; target=&quot;_blank&quot;&gt;&lt;font size=&quot;3&quot;&gt;mp3&lt;/font&gt;&lt;/a&gt;&lt;font size=&quot;3&quot;&gt;的歌手，标题，专辑名称，年代，风格等信息，该信息就被称为ID3信息，ID3信息分为两个版本，v1和v2版。&lt;/font&gt;&lt;a href=&quot;http://baike.baidu.com/view/66078.htm&quot; target=&quot;_blank&quot;&gt;&lt;font size=&quot;3&quot;&gt;Via&lt;/font&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;font size=&quot;3&quot;&gt;cd /home/software/php-5.2.8/ext&lt;br /&gt;&lt;br /&gt;[root@CentOS_Test_Server ext]# wget &lt;/font&gt;&lt;a href=&quot;http://pecl.php.net/get/id3-0.2.tgz&quot; target=&quot;_blank&quot;&gt;&lt;font size=&quot;3&quot;&gt;http://pecl.php.net/get/id3-0.2.tgz&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;font size=&quot;3&quot;&gt;--02:09:27--&amp;nbsp; http://pecl.php.net/get/id3-0.2.tgz&lt;br /&gt;Resolving pecl.php.net... 76.75.200.106&lt;br /&gt;Connecting to pecl.php.net|76.75.200.106|:80... connected.&lt;br /&gt;HTTP request sent, awaiting response... 200 OK&lt;br /&gt;Length: 20693 (20K) [application/octet-stream]&lt;br /&gt;Saving to: `id3-0.2.tgz'&lt;br /&gt;&lt;br /&gt;100%[=========================================================================&amp;gt;] 20,693&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 23.8K/s&amp;nbsp;&amp;nbsp; in 0.8s&lt;br /&gt;&lt;br /&gt;02:09:29 (23.8 KB/s) - `id3-0.2.tgz' saved [20693/20693]&lt;br /&gt;&lt;br /&gt;[root@CentOS_Test_Server ext]# tar zxvf id3-0.2.tgz&lt;br /&gt;package.xml&lt;br /&gt;id3-0.2/examples/example_get.php&lt;br /&gt;id3-0.2/examples/example_get_genre_name.php&lt;br /&gt;id3-0.2/examples/example_id3v2_frames.php&lt;br /&gt;id3-0.2/examples/example_set.php&lt;br /&gt;id3-0.2/examples/example_version.php&lt;br /&gt;id3-0.2/config.m4&lt;br /&gt;id3-0.2/config.w32&lt;br /&gt;id3-0.2/CREDITS&lt;br /&gt;id3-0.2/EXPERIMENTAL&lt;br /&gt;id3-0.2/id3.c&lt;br /&gt;id3-0.2/id3.dsp&lt;br /&gt;id3-0.2/php_id3.h&lt;br /&gt;id3-0.2/TODO&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;cd id3-0.2&lt;br /&gt;./configure&lt;br /&gt;[root@CentOS_Test_Server id3-0.2]# make &amp;amp;&amp;amp; make install&lt;br /&gt;&lt;br /&gt;编辑php.ini文件，在里面加入如下的一行&lt;br /&gt;root@CentOS_Test_Server id3-0.2]# vi /usr/local/webserver/php/etc/php.ini&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;FONT-WEIGHT: bold; COLOR: rgb(255,0,0)&quot;&gt;extension = &amp;quot;id3.so&amp;quot;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;用命令行下模块id3已经生效了，连php-fpm也不需要重启，如果要通过web server调用id3，则需要重启web server及php-fpm&lt;br /&gt;[root@CentOS_Test_Server id3-0.2]# php -m | grep id3&lt;br /&gt;id3&lt;br /&gt;&lt;br /&gt;用王菲的歌曲幽兰操来作测试，天后级歌手嘛:-)，(&lt;/font&gt;&lt;font face=&quot;Courier New&quot;&gt;&lt;a title=&quot;http://f.mp3cn.net/cb/11/cb11a75fd33adc4a16de34ce12429730.mp3&quot; href=&quot;http://f.mp3cn.net/cb/11/cb11a75fd33adc4a16de34ce12429730.mp3&quot;&gt;&lt;font size=&quot;3&quot;&gt;http://www.abc.com/cb/11/cb11a75fd33adc4a16de34ce12429730.mp3&lt;/font&gt;&lt;/a&gt;&lt;span&gt;&lt;font size=&quot;3&quot;&gt;)&lt;br /&gt;&lt;br /&gt;将此首mp3通过wget下载到测试服务器里面&lt;br /&gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;font size=&quot;3&quot;&gt;[root@CentOS_Test_Server www]# wget http://www.abc.com/cb/11/cb11a75fd33adc4a16de34ce12429730.mp3&lt;br /&gt;--02:22:32--&amp;nbsp; http://www.abc.com/cb/11/cb11a75fd33adc4a16de34ce12429730.mp3&lt;br /&gt;Resolving www.abc.com... 125.32.112.38&lt;br /&gt;Connecting to f.mp3cn.net|125.32.112.38|:80... connected.&lt;br /&gt;HTTP request sent, awaiting response... 302 Found&lt;br /&gt;Location: http://222.35.28.8:9203/2670207D15FEE1CF4FB33BEA0961ADD4C92981369BE8D287/www.abc.com/cb/11/cb11a75fd33adc4a16de34ce12429730.mp3 [following]&lt;br /&gt;--02:22:32--&amp;nbsp; http://222.35.28.8:9203/2670207D15FEE1CF4FB33BEA0961ADD4C92981369BE8D287/f.mp3cn.net/cb/11/cb11a75fd33adc4a16de34ce12429730.mp3&lt;br /&gt;Connecting to 222.35.28.8:9203... connected.&lt;br /&gt;HTTP request sent, awaiting response... 200 OK&lt;br /&gt;Length: 2192227 (2.1M) [audio/mpeg]&lt;br /&gt;Saving to: `cb11a75fd33adc4a16de34ce12429730.mp3'&lt;br /&gt;&lt;br /&gt;100%[=========================================================================&amp;gt;] 2,192,227&amp;nbsp;&amp;nbsp; 76.8K/s&amp;nbsp;&amp;nbsp; in 18s&lt;br /&gt;&lt;br /&gt;02:22:51 (122 KB/s) - `cb11a75fd33adc4a16de34ce12429730.mp3' saved [2192227/2192227]&lt;br /&gt;&lt;br /&gt;编辑文件id3.php&lt;sub&gt;，输入如下的内容&lt;/sub&gt;&lt;br /&gt;[root@CentOS_Test_Server www]# vim id3.php&lt;br /&gt;&amp;lt;?php&lt;br /&gt;$tag = id3_get_tag('cb11a75fd33adc4a16de34ce12429730.mp3');&lt;br /&gt;var_dump($tag);&lt;br /&gt;?&amp;gt;&lt;br /&gt;&lt;br /&gt;执行，最后输出的信息太少了，根本不是我们需要的，还有一种可能是&lt;span style=&quot;COLOR: rgb(255,0,0)&quot;&gt;将wma格式的文件转换为mp3格时歌曲的元数据ffmpeg给自动过滤了。&lt;/span&gt;&lt;br /&gt;[root@CentOS_Test_Server www]# php id3.php&lt;br /&gt;Array&lt;br /&gt;(&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; [encodedBy] =&amp;gt; Lavf52.31.0&lt;br /&gt;)&lt;br /&gt;&lt;br /&gt;我们再下载一个mp3文件试一下，在&lt;/font&gt;&lt;a href=&quot;http://mp3.baidu.com/&quot; target=&quot;_blank&quot;&gt;&lt;font size=&quot;3&quot;&gt;百度mp3&lt;/font&gt;&lt;/a&gt;&lt;font size=&quot;3&quot;&gt;搜索的&amp;ldquo;幽兰操&amp;rdquo;&lt;br /&gt;[root@CentOS_Test_Server www]# wget &lt;/font&gt;&lt;a href=&quot;http://www.citynorth.cn/music/confucius.mp3&quot; target=&quot;_blank&quot;&gt;&lt;font size=&quot;3&quot;&gt;http://www.citynorth.cn/music/confucius.mp3&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;font size=&quot;3&quot;&gt;--23:04:28--&amp;nbsp; http://www.citynorth.cn/music/confucius.mp3&lt;br /&gt;Resolving www.citynorth.cn... 122.70.148.28&lt;br /&gt;Connecting to www.citynorth.cn|122.70.148.28|:80... connected.&lt;br /&gt;HTTP request sent, awaiting response... 200 OK&lt;br /&gt;Length: 4396223 (4.2M) [audio/mpeg]&lt;br /&gt;Saving to: `confucius.mp3'&lt;br /&gt;&lt;br /&gt;100%[=========================================================================&amp;gt;] 4,396,223&amp;nbsp;&amp;nbsp;&amp;nbsp; 174K/s&amp;nbsp;&amp;nbsp; in 42s&lt;br /&gt;&lt;br /&gt;23:05:10 (102 KB/s) - `confucius.mp3' saved [4396223/4396223]&lt;br /&gt;&lt;br /&gt;vim id3.php，加入一行代码&lt;span style=&quot;FONT-WEIGHT: bold&quot;&gt;$tag = id3_get_tag('confucius.mp3');&lt;/span&gt;&lt;br /&gt;&amp;lt;?php&lt;br /&gt;//$tag = id3_get_tag('eff86facdb73deaee395270c585f5a4b.mp3', ID3_V2_3);&lt;br /&gt;//$tag = id3_get_tag('cb11a75fd33adc4a16de34ce12429730.mp3', ID3_V2_3);&lt;br /&gt;&lt;span style=&quot;FONT-WEIGHT: bold&quot;&gt;$tag = id3_get_tag('confucius.mp3');&lt;/span&gt;&lt;br /&gt;print_r($tag);&lt;br /&gt;?&amp;gt;&lt;br /&gt;&lt;br /&gt;执行，输出的信息如下，mp3的id3信息基本上都取出来了。&lt;br /&gt;[root@CentOS_Test_Server www]# php id3.php&lt;br /&gt;Array&lt;br /&gt;(&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; [title] =&amp;gt; 大地電影&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; [artist] =&amp;gt; 王菲&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; [album] =&amp;gt; Album&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; [year] =&amp;gt; 2010&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; [comment] =&amp;gt; Comment&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; [genre] =&amp;gt; 13&lt;br /&gt;)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/font&gt;
&lt;div style=&quot;FONT-WEIGHT: bold&quot;&gt;&lt;font size=&quot;3&quot;&gt;我的相关日志：&lt;/font&gt;&lt;/div&gt;&lt;br /&gt;&lt;font size=&quot;3&quot;&gt;2010-01-17&amp;nbsp;|&amp;nbsp;&lt;/font&gt;&lt;a title=&quot;解决CentOS下安装ffmpeg时的错误&quot; href=&quot;http://iamcaihuafeng.blog.sohu.com/142463995.html&quot; target=&quot;_blank&quot;&gt;&lt;font size=&quot;3&quot;&gt;解决CentOS下安装ffmpeg时的错误&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;font size=&quot;3&quot;&gt;2010-01-29&amp;nbsp;|&amp;nbsp;&lt;/font&gt;&lt;a title=&quot;计算mp3文件的播放时间&quot; href=&quot;http://iamcaihuafeng.blog.sohu.com/143419334.html&quot; target=&quot;_blank&quot;&gt;&lt;font size=&quot;3&quot;&gt;计算mp3文件的播放时间&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;font size=&quot;3&quot;&gt;2010-01-22&amp;nbsp;|&amp;nbsp;&lt;/font&gt;&lt;a title=&quot;增量抓取音乐程序&quot; href=&quot;http://iamcaihuafeng.blog.sohu.com/142873981.html&quot; target=&quot;_blank&quot;&gt;&lt;font size=&quot;3&quot;&gt;增量抓取音乐程序&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;font size=&quot;3&quot;&gt;2009-12-20&amp;nbsp;|&amp;nbsp;&lt;/font&gt;&lt;a title=&quot;SOSO音乐通过MediaPlayer支持wma&quot; href=&quot;http://iamcaihuafeng.blog.sohu.com/140066281.html&quot; target=&quot;_blank&quot;&gt;&lt;font size=&quot;3&quot;&gt;SOSO音乐通过MediaPlayer支持wma&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;font size=&quot;3&quot;&gt;2009-12-18&amp;nbsp;|&amp;nbsp;&lt;/font&gt;&lt;a title=&quot;音乐抓取总结&quot; href=&quot;http://iamcaihuafeng.blog.sohu.com/139896902.html&quot; target=&quot;_blank&quot;&gt;&lt;font size=&quot;3&quot;&gt;音乐抓取总结&lt;/font&gt;&lt;/a&gt;&lt;/div&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/331034709/sohublog/feedsky/s.gif?r=http://iamcaihuafeng.blog.sohu.com/143670908.html&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/sohublog/331034709/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/sohublog/331034709/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=34cdd89c1839cfabf678d0afc1f06a59&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=34cdd89c1839cfabf678d0afc1f06a59&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=e65a0a2145564723fcb4e341b8cd9f20&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=e65a0a2145564723fcb4e341b8cd9f20&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=ba5d1643dfad9dbab6e210e8c7e30a5c&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=ba5d1643dfad9dbab6e210e8c7e30a5c&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=5125b1219fac137ee85f70a2065a19b9&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=5125b1219fac137ee85f70a2065a19b9&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=ebd08a7d0185d3ef4eea955ab9e1239a&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=ebd08a7d0185d3ef4eea955ab9e1239a&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=0aba5270170eddb372b5a859fb54c770&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=0aba5270170eddb372b5a859fb54c770&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=993812ca93e3bb092498fe3b7808e9aa&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=993812ca93e3bb092498fe3b7808e9aa&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=15fda433d2bc53e361fe0239bf910366&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=15fda433d2bc53e361fe0239bf910366&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</description><category>网络及操作系统</category><pubDate>Mon, 01 Feb 2010 23:57:57 +0800</pubDate><author>nlfd</author><comments>http://iamcaihuafeng.blog.sohu.com/143670908.html#comment</comments><guid isPermaLink="false">http://iamcaihuafeng.blog.sohu.com/143670908.html</guid><dc:creator>nlfd</dc:creator><fs:srclink>http://iamcaihuafeng.blog.sohu.com/143670908.html</fs:srclink><fs:srcfeed>http://iamcaihuafeng.blog.sohu.com/rss</fs:srcfeed><fs:itemid>feedsky/sohublog/~7143576/331034709/5252344</fs:itemid></item><item><title>AutoProxy结合puff实现翻墙</title><link>http://iamcaihuafeng.blog.sohu.com/143492164.html</link><description>&lt;div style=&quot;FONT-SIZE: 14px; LINE-HEIGHT: 160%&quot;&gt;
&lt;p&gt;&lt;font size=&quot;3&quot;&gt;前面写过一篇&lt;/font&gt;&lt;a href=&quot;http://iamcaihuafeng.blog.sohu.com/142180627.html&quot; target=&quot;_blank&quot;&gt;&lt;font size=&quot;3&quot;&gt;翻墙软件puff&lt;/font&gt;&lt;/a&gt;&lt;font size=&quot;3&quot;&gt;，如果单纯用puff则浏览网页时是否使用代理必须手动配置，这样比较麻烦，偶然间发现了&lt;/font&gt;&lt;a href=&quot;https://addons.mozilla.org/en-US/firefox/addon/11009&quot; target=&quot;_blank&quot;&gt;&lt;font size=&quot;3&quot;&gt;AutoProxy&lt;/font&gt;&lt;/a&gt;&lt;font size=&quot;3&quot;&gt;这个firefox的扩展，使用后发现还不错。&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font size=&quot;3&quot;&gt;&lt;br /&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font size=&quot;3&quot;&gt;首先，在firefox里面打开&lt;/font&gt;&lt;a href=&quot;https://addons.mozilla.org/en-US/firefox/addon/11009&quot; target=&quot;_blank&quot;&gt;&lt;font size=&quot;3&quot;&gt;https://addons.mozilla.org/en-US/firefox/addon/11009&lt;/font&gt;&lt;/a&gt;&lt;font size=&quot;3&quot;&gt;，点击Add to Firefox图标，安装完AutoProxy扩展以后firefox提示你重启浏览器，重启以后就进入如下的界面。&lt;img style=&quot;DISPLAY: block; MARGIN: 0px auto 10px; TEXT-ALIGN: center&quot; alt=&quot;&quot; src=&quot;http://513.img.pp.sohu.com.cn/images/2010/1/29/21/21/1272b2eac8ag215.jpg&quot; border=&quot;0&quot; /&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font size=&quot;3&quot;&gt;AutoProxy提示你订阅代理规则列表，也就是出现在订阅列表里面的会自动使用代理访问，不在里面的不用代理访问，都是全自动的，无需人工干遇。点击ok按钮就订阅了。&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font size=&quot;3&quot;&gt;&lt;br /&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font size=&quot;3&quot;&gt;点击firefox右下角的&lt;span style=&quot;FONT-WEIGHT: bold; COLOR: rgb(255,0,0)&quot;&gt;福&lt;/span&gt;字图标，点击&lt;span style=&quot;FONT-WEIGHT: bold&quot;&gt;Proxy Server -&amp;gt; Choose proxy server&lt;/span&gt;，选择你的代理服务器，我使用的是puff，点击ok，这样代理服务器就设置完成了。&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font size=&quot;3&quot;&gt;&lt;img style=&quot;DISPLAY: block; MARGIN: 0px auto 10px; TEXT-ALIGN: center&quot; alt=&quot;&quot; src=&quot;http://513.img.pp.sohu.com.cn/images/2010/1/29/21/21/1272b2eacdag215.jpg&quot; border=&quot;0&quot; /&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font size=&quot;3&quot;&gt;&lt;br /&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font size=&quot;3&quot;&gt;AutoProxy只是一个代理服务器的切换软件，而翻墙时真正起作用是的Tor、Puff、ssh -d这些软件或服务，我使用的是puff做代理，把puff.exe放到启动里面可以随操作系统一起启动。&lt;br /&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font size=&quot;3&quot;&gt;&lt;br /&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font size=&quot;3&quot;&gt;参考：&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://hi.baidu.com/%E6%B5%81%E6%B0%B4%E5%B0%8F%E9%95%87/blog/item/6b58cff206bce5c20a46e0bc.html&quot; target=&quot;_blank&quot;&gt;&lt;font size=&quot;3&quot;&gt;http://hi.baidu.com/%E6%B5%81%E6%B0%B4%E5%B0%8F%E9%95%87/blog/item/6b58cff206bce5c20a46e0bc.html&lt;/font&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;font size=&quot;3&quot;&gt;&lt;br /&gt;&lt;/font&gt;&lt;/p&gt;
&lt;div style=&quot;FONT-WEIGHT: bold&quot;&gt;&lt;font size=&quot;3&quot;&gt;我的相关日志：&lt;/font&gt;&lt;/div&gt;&lt;br /&gt;&lt;font size=&quot;3&quot;&gt;2010-01-14&amp;nbsp;|&amp;nbsp;&lt;/font&gt;&lt;a title=&quot;翻墙软件puff&quot; href=&quot;http://iamcaihuafeng.blog.sohu.com/142180627.html&quot; target=&quot;_blank&quot;&gt;&lt;font size=&quot;3&quot;&gt;翻墙软件puff&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;font size=&quot;3&quot;&gt;2009-07-16&amp;nbsp;|&amp;nbsp;&lt;/font&gt;&lt;a title=&quot;试用翻墙软件tor&quot; href=&quot;http://iamcaihuafeng.blog.sohu.com/120682200.html&quot; target=&quot;_blank&quot;&gt;&lt;font size=&quot;3&quot;&gt;试用翻墙软件tor&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;font size=&quot;3&quot;&gt;2010-01-23&amp;nbsp;|&amp;nbsp;&lt;/font&gt;&lt;a title=&quot;SSH登录超时设置&quot; href=&quot;http://iamcaihuafeng.blog.sohu.com/142958954.html&quot; target=&quot;_blank&quot;&gt;&lt;font size=&quot;3&quot;&gt;SSH登录超时设置&lt;/font&gt;&lt;/a&gt;&lt;/div&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/331034710/sohublog/feedsky/s.gif?r=http://iamcaihuafeng.blog.sohu.com/143492164.html&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/sohublog/331034710/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/sohublog/331034710/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=fc2a7a7602e6e4bdd15c4487f2065da9&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=fc2a7a7602e6e4bdd15c4487f2065da9&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=820d06f6a039796253376124a45ca806&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=820d06f6a039796253376124a45ca806&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=2fa0dee0b7695161407b66211d9fc173&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=2fa0dee0b7695161407b66211d9fc173&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=fe84056fc8aeec9d0c4a3be41dc04b06&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=fe84056fc8aeec9d0c4a3be41dc04b06&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=94eb46088457eec14d5244ab698e575a&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=94eb46088457eec14d5244ab698e575a&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=ce74ca3ff05055858523ac37617b84a3&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=ce74ca3ff05055858523ac37617b84a3&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=3505bb37b84cca225f49088ff8933c31&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=3505bb37b84cca225f49088ff8933c31&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=5dbc6dc5a8843a25a36dc321d5335746&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=5dbc6dc5a8843a25a36dc321d5335746&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</description><category>软件及在线应用</category><pubDate>Fri, 29 Jan 2010 22:19:23 +0800</pubDate><author>nlfd</author><comments>http://iamcaihuafeng.blog.sohu.com/143492164.html#comment</comments><guid isPermaLink="false">http://iamcaihuafeng.blog.sohu.com/143492164.html</guid><dc:creator>nlfd</dc:creator><fs:srclink>http://iamcaihuafeng.blog.sohu.com/143492164.html</fs:srclink><fs:srcfeed>http://iamcaihuafeng.blog.sohu.com/rss</fs:srcfeed><fs:itemid>feedsky/sohublog/~7143576/331034710/5252344</fs:itemid></item><item><title>计算mp3文件的播放时间</title><link>http://iamcaihuafeng.blog.sohu.com/143419334.html</link><description>&lt;div style=&quot;FONT-SIZE: 14px; LINE-HEIGHT: 160%&quot;&gt;&lt;font size=&quot;3&quot;&gt;&lt;span style=&quot;FONT-WEIGHT: bold&quot;&gt;在*nix服务器上用ffmpeg计算mp3文件的长度等信息&lt;/span&gt;&lt;br /&gt;ffmpeg -i /data/www/music/mu/ce/e6/cee631121c2ec9232f3a2f028ad5c89b.mp3&lt;br /&gt;FFmpeg version 0.5, Copyright (c) 2000-2009 Fabrice Bellard, et al.&lt;br /&gt;&amp;nbsp; configuration: --prefix=/usr/local --enable-memalign-hack --enable-libmp3lame --enable-shared&lt;br /&gt;&amp;nbsp; libavutil&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 49.15. 0 / 49.15. 0&lt;br /&gt;&amp;nbsp; libavcodec&amp;nbsp;&amp;nbsp;&amp;nbsp; 52.20. 0 / 52.20. 0&lt;br /&gt;&amp;nbsp; libavformat&amp;nbsp;&amp;nbsp; 52.31. 0 / 52.31. 0&lt;br /&gt;&amp;nbsp; libavdevice&amp;nbsp;&amp;nbsp; 52. 1. 0 / 52. 1. 0&lt;br /&gt;&amp;nbsp; built on Dec 14 2009 11:41:56, gcc: 4.3.2&lt;br /&gt;Input #0, mp3, from '/data/www/music/mu/ce/e6/cee631121c2ec9232f3a2f028ad5c89b.mp3':&lt;br /&gt;&amp;nbsp; &lt;span style=&quot;FONT-WEIGHT: bold; COLOR: rgb(255,0,0)&quot;&gt;Duration: 00:04:58.13, start: 0.000000, bitrate: 64 kb/s&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Stream #0.0: Audio: mp3, 44100 Hz, stereo, s16, 64 kb/s&lt;br /&gt;At least one output file must be specified&lt;br /&gt;&lt;br /&gt;&lt;/font&gt;&lt;font size=&quot;3&quot;&gt;&lt;span style=&quot;FONT-WEIGHT: bold&quot;&gt;然后用Windows Media Player通过url方式打开此文件&lt;br /&gt;&lt;/span&gt;长度显示的是04:58(即4分58秒，与上面用ffmpeg计算的长度基本上是一致的，只不过WMPlayer没有显示秒后面的时间。&lt;/font&gt;&lt;span style=&quot;FONT-WEIGHT: bold&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;font size=&quot;3&quot;&gt;&lt;img style=&quot;DISPLAY: block; MARGIN: 0px auto 10px; TEXT-ALIGN: center&quot; alt=&quot;&quot; src=&quot;http://1844.img.pp.sohu.com.cn/images/2010/1/29/1/9/12726bdbad2g214.jpg&quot; border=&quot;0&quot; /&gt;&lt;br /&gt;看来&lt;/font&gt;&lt;a href=&quot;http://ffmpeg.org/&quot; target=&quot;_blank&quot;&gt;&lt;font size=&quot;3&quot;&gt;ffmpeg&lt;/font&gt;&lt;/a&gt;&lt;font size=&quot;3&quot;&gt;的计算应该是比较准确的。&lt;br /&gt;&lt;br /&gt;&lt;/font&gt;
&lt;div style=&quot;FONT-WEIGHT: bold&quot;&gt;&lt;font size=&quot;3&quot;&gt;我的相关日志：&lt;/font&gt;&lt;/div&gt;&lt;br /&gt;&lt;font size=&quot;3&quot;&gt;2010-01-17&amp;nbsp;|&amp;nbsp;&lt;/font&gt;&lt;a title=&quot;PHP中system及exec的用法&quot; href=&quot;http://iamcaihuafeng.blog.sohu.com/142494397.html&quot; target=&quot;_blank&quot;&gt;&lt;font size=&quot;3&quot;&gt;PHP中system及exec的用法&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;font size=&quot;3&quot;&gt;2010-01-17&amp;nbsp;|&amp;nbsp;&lt;/font&gt;&lt;a title=&quot;解决CentOS下安装ffmpeg时的错误&quot; href=&quot;http://iamcaihuafeng.blog.sohu.com/142463995.html&quot; target=&quot;_blank&quot;&gt;&lt;font size=&quot;3&quot;&gt;解决CentOS下安装ffmpeg时的错误&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;font size=&quot;3&quot;&gt;2009-12-14&amp;nbsp;|&amp;nbsp;&lt;/font&gt;&lt;a title=&quot;在Debian下安装lame及ffmpeg&quot; href=&quot;http://iamcaihuafeng.blog.sohu.com/139613701.html&quot; target=&quot;_blank&quot;&gt;&lt;font size=&quot;3&quot;&gt;在Debian下安装lame及ffmpeg&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;font size=&quot;3&quot;&gt;2010-01-22&amp;nbsp;|&amp;nbsp;&lt;/font&gt;&lt;a title=&quot;增量抓取音乐程序&quot; href=&quot;http://iamcaihuafeng.blog.sohu.com/142873981.html&quot; target=&quot;_blank&quot;&gt;&lt;font size=&quot;3&quot;&gt;增量抓取音乐程序&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;font size=&quot;3&quot;&gt;2009-12-20&amp;nbsp;|&amp;nbsp;&lt;/font&gt;&lt;a title=&quot;SOSO音乐通过MediaPlayer支持wma&quot; href=&quot;http://iamcaihuafeng.blog.sohu.com/140066281.html&quot; target=&quot;_blank&quot;&gt;&lt;font size=&quot;3&quot;&gt;SOSO音乐通过MediaPlayer支持wma&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;font size=&quot;3&quot;&gt;2009-12-18&amp;nbsp;|&amp;nbsp;&lt;/font&gt;&lt;a title=&quot;音乐抓取总结&quot; href=&quot;http://iamcaihuafeng.blog.sohu.com/139896902.html&quot; target=&quot;_blank&quot;&gt;&lt;font size=&quot;3&quot;&gt;音乐抓取总结&lt;/font&gt;&lt;/a&gt;&lt;/div&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/331034711/sohublog/feedsky/s.gif?r=http://iamcaihuafeng.blog.sohu.com/143419334.html&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/sohublog/331034711/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/sohublog/331034711/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=dbd1fb58b64bc57e01c4236c6bad5832&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=dbd1fb58b64bc57e01c4236c6bad5832&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=67327082d65cfcf9365837c77afec00f&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=67327082d65cfcf9365837c77afec00f&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=58e105b1716f706abf5095b59b66a03f&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=58e105b1716f706abf5095b59b66a03f&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=b76b9744d07ea3b3bf88eaaf2cac2138&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=b76b9744d07ea3b3bf88eaaf2cac2138&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=77c20719dc9d6a659b6b27381806c879&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=77c20719dc9d6a659b6b27381806c879&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=96216a3f2b49b01e96060f51939e5424&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=96216a3f2b49b01e96060f51939e5424&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=d8fcf1510d42e91374d2d5f73a55d7fc&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=d8fcf1510d42e91374d2d5f73a55d7fc&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=cb80ba246b0a77b775466a85420e79ee&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=cb80ba246b0a77b775466a85420e79ee&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</description><category>其它技术</category><pubDate>Fri, 29 Jan 2010 01:19:36 +0800</pubDate><author>nlfd</author><comments>http://iamcaihuafeng.blog.sohu.com/143419334.html#comment</comments><guid isPermaLink="false">http://iamcaihuafeng.blog.sohu.com/143419334.html</guid><dc:creator>nlfd</dc:creator><fs:srclink>http://iamcaihuafeng.blog.sohu.com/143419334.html</fs:srclink><fs:srcfeed>http://iamcaihuafeng.blog.sohu.com/rss</fs:srcfeed><fs:itemid>feedsky/sohublog/~7143576/331034711/5252344</fs:itemid></item><item><title>怎样避免MySQL中的MySQL server has gone away错误？</title><link>http://iamcaihuafeng.blog.sohu.com/143060709.html</link><description>&lt;div style=&quot;FONT-SIZE: 14px; LINE-HEIGHT: 160%&quot;&gt;&lt;font size=&quot;3&quot;&gt;我在最近的一个项目中，因为要抓取一些数据，且程序执行的时间较长，少则几个小时，多则几天时间，而且在程序执行期间，不可能总是在执行数据库操作，数据库操作只是很少的一部分了，为了避免出现上述标题中的错误，需要在wait_timeout指定的时间内执行mysql_ping操作，否则会提示上述错误。&lt;br /&gt;&lt;br /&gt;比如你要下载一个100M的视频可能在5分钟之内无法下载完成，下载完成后再进行数据库相关的操作，在程序执行的时候你可以计算一下程序的执行时间，在程序执行时间小于300秒前需要执行一下mysql_ping操作。&lt;br /&gt;&lt;br /&gt;这个方法很管用，我亲自试过了，在wait_timeout指定的时间内执行mysql_ping以后，就再也不会出现上述的错误。&lt;br /&gt;&lt;br /&gt;download_video();&lt;br /&gt;&lt;br /&gt;function microtime_float() {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; list($usec, $sec) = explode(&amp;quot; &amp;quot;, microtime());&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return ((float)$usec + (float)$sec);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;function down_video() {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (下载进程还在运行) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; $i++;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; do_check_mysql($i);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sleep(1);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;我们看一下MySQL数据库的有关wait_timeout的配置，单位是秒，时间是5分钟，&lt;span style=&quot;FONT-WEIGHT: bold&quot;&gt;也就是说，如果你在5分钟之内不进行任何数据库相关的操作，必须告诉一下MySQL Server你自己还活着&lt;/span&gt;，否则你下次执行数据库操作时就会报此错误。&lt;br /&gt;grep timeout /etc/my.cnf&lt;br /&gt;wait_timeout = 300&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;FONT-WEIGHT: bold&quot;&gt;mysql_ping函数在PHP手册的说明&lt;/span&gt;&lt;br /&gt;mysql_ping&lt;br /&gt;&lt;br /&gt;(PHP 4 &amp;gt;= 4.3.0, PHP 5)&lt;br /&gt;mysql_ping -- Ping 一个服务器连接，如果没有连接则重新连接&lt;br /&gt;说明&lt;br /&gt;bool mysql_ping ( [resource link_identifier] )&lt;br /&gt;&lt;br /&gt;mysql_ping() 检查到服务器的连接是否正常。如果断开，则自动尝试连接。本函数可用于空闲很久的脚本来检查服务器是否关闭了连接，如果有必要则重新连接上。如果到服务器的连接可用则 mysql_ping() 返回 TRUE，否则返回 FALSE。&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;FONT-WEIGHT: bold&quot;&gt;我自己自定义了两个函数，用在我的项目中&lt;/span&gt;。&lt;br /&gt;function check_mysql() {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; global $mysql;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /**&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * mysql_ping() 检查到服务器的连接是否正常。如果断开，则自动尝试连接。本函数可用于空闲很久的脚本来检查服务器是否关闭了连接，如果有必要则重新连接上。如果到服务器的连接可用则 mysql_ping() 返回 TRUE，否则返回 FALSE。 &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; */&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; $can_use = mysql_ping($mysql -&amp;gt; Link_id);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; writeLog(sprintf(&amp;quot;%s Mysql status %s&amp;quot;, __FUNCTION__, $can_use));&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&amp;nbsp;/**&lt;br /&gt;&amp;nbsp; * 有条件的执行mysql_ping&lt;br /&gt;&amp;nbsp; */&lt;br /&gt;function do_check_mysql($count, $second = 10) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if ((int)$second &amp;lt;= 0) $second = 10;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //为防止操作超时，当操作时间是$second的倍数的时候，执行一行check_mysql()&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if ($count % $second == 0) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; check_mysql();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;FONT-WEIGHT: bold&quot;&gt;more nohup.out&lt;/span&gt;&lt;br /&gt;&amp;lt;font style=&amp;quot;font-size: 14px;&amp;quot;&amp;gt;SQL: SELECT a.songid,a.songname,b.sengername FROM `song` AS a INNER JOIN senger AS&lt;br /&gt;b ON a.sengerid=b.sengerid WHERE a.sengerid &amp;gt; 0 ORDER BY songid ASC&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&amp;lt;font style=&amp;quot;font-size: 12px;&amp;quot;&amp;gt;Error&lt;br /&gt;&amp;nbsp;Number: 2006 &amp;lt;br&amp;gt;Error: MySQL server has gone away&amp;lt;/font&amp;gt;&lt;br /&gt;&lt;br /&gt;参考：&lt;br /&gt;&lt;/font&gt;&lt;a href=&quot;http://hi.baidu.com/thinkinginlamp/blog/item/8512ad4b6f2e96f482025cf7.html&quot; target=&quot;_blank&quot;&gt;&lt;font size=&quot;3&quot;&gt;http://hi.baidu.com/thinkinginlamp/blog/item/8512ad4b6f2e96f482025cf7.html&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;http://hi.baidu.com/thinkinginlamp/blog/item/d9e0cb13b04c5428dd540111.html&quot; target=&quot;_blank&quot;&gt;&lt;font size=&quot;3&quot;&gt;http://hi.baidu.com/thinkinginlamp/blog/item/d9e0cb13b04c5428dd540111.html&lt;/font&gt;&lt;/a&gt;&lt;/div&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/331034712/sohublog/feedsky/s.gif?r=http://iamcaihuafeng.blog.sohu.com/143060709.html&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/sohublog/331034712/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/sohublog/331034712/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=47f3e4261b91070b689e6c198cf7d76f&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=47f3e4261b91070b689e6c198cf7d76f&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=0410ede0f8a98402546478db86815cc2&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=0410ede0f8a98402546478db86815cc2&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=3d04c9164799417dce4f7ec728c9de95&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=3d04c9164799417dce4f7ec728c9de95&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=6dfb8ddcd70bb65a567bbed3b863b269&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=6dfb8ddcd70bb65a567bbed3b863b269&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=0014c1b094dcbadbc95d66f761c042a1&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=0014c1b094dcbadbc95d66f761c042a1&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=af62a5406ee4dbc4af679b1646d10797&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=af62a5406ee4dbc4af679b1646d10797&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=6b5bc030cd2277b46d21b0efa0bfcb5b&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=6b5bc030cd2277b46d21b0efa0bfcb5b&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=4be4ef0070a6d285475c6e1765022f0e&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=4be4ef0070a6d285475c6e1765022f0e&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</description><category>Database</category><pubDate>Sun, 24 Jan 2010 19:53:06 +0800</pubDate><author>nlfd</author><comments>http://iamcaihuafeng.blog.sohu.com/143060709.html#comment</comments><guid isPermaLink="false">http://iamcaihuafeng.blog.sohu.com/143060709.html</guid><dc:creator>nlfd</dc:creator><fs:srclink>http://iamcaihuafeng.blog.sohu.com/143060709.html</fs:srclink><fs:srcfeed>http://iamcaihuafeng.blog.sohu.com/rss</fs:srcfeed><fs:itemid>feedsky/sohublog/~7143576/331034712/5252344</fs:itemid></item><item><title>文件缓存有时也挺快的</title><link>http://iamcaihuafeng.blog.sohu.com/143057695.html</link><description>&lt;div style=&quot;FONT-SIZE: 14px; LINE-HEIGHT: 160%&quot;&gt;&lt;font size=&quot;3&quot;&gt;有个项目中要实现增量抓取数据的功能，由于数据库的数据有点大，有几十万条数据，如果每次去数据库中进行判重可能效率有点慢，一开始是考虑是把数据缓存在Tokyo Cabinet(简称tc)中，用的是tc的tchmgr put命令，没想到执行了大概5分钟左右的时间后，不知道为什么进程已经停止了，即使已经执行完成了，速度也是太慢了，有点&lt;span style=&quot;FONT-WEIGHT: bold&quot;&gt;弄巧成拙&lt;/span&gt;了。&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;FONT-WEIGHT: bold&quot;&gt;最后改用php的文件来实现，没想到速度非常快，1秒多的时间就全部执行完了，速度非常快&lt;/span&gt;。&lt;br /&gt;&lt;br /&gt;下面是用文件缓存时的日志。&lt;br /&gt;&lt;br /&gt;2010-01-22 14:03:27 0.47822300&amp;nbsp; ==================================================&lt;br /&gt;2010-01-22 14:03:27 0.47838400&amp;nbsp; Begin cache song...&lt;br /&gt;2010-01-22 14:03:28 0.73927700&amp;nbsp; End cache song...&lt;br /&gt;2010-01-22 14:03:28 0.73953700&amp;nbsp; ==================================================&lt;br /&gt;&lt;br /&gt;2010-01-22 14:03:28 0.82295800&amp;nbsp; ==================================================&lt;br /&gt;2010-01-22 14:03:28 0.82315600&amp;nbsp; Begin cache singer...&lt;br /&gt;2010-01-22 14:03:28 0.85681800&amp;nbsp; End cache singer...&lt;br /&gt;2010-01-22 14:03:28 0.85695600&amp;nbsp; ==================================================&lt;br /&gt;&lt;br /&gt;2010-01-22 14:03:28 0.91378100&amp;nbsp; ==================================================&lt;br /&gt;2010-01-22 14:03:28 0.91395600&amp;nbsp; Begin cache special...&lt;br /&gt;2010-01-22 14:03:29 0.02663200&amp;nbsp; End cache special...&lt;br /&gt;2010-01-22 14:03:29 0.02677700&amp;nbsp; ==================================================&lt;br /&gt;&lt;br /&gt;生成的缓存文件是一个关联数组，key值用md5进行哈希。&lt;br /&gt;more /tmp/song.tch&lt;br /&gt;&amp;lt;?php&lt;br /&gt;$song_data = array (&lt;br /&gt;&amp;nbsp; '7d6e7b19cae5de83199c6e56ec141faf' =&amp;gt; '30352',&lt;br /&gt;&amp;nbsp; '0226ee2f895178aaefb9256cf1290e8a' =&amp;gt; '2',&lt;br /&gt;&amp;nbsp; '01de4d31dbe931d417d5ef71dcc88a94' =&amp;gt; '3',&lt;br /&gt;&amp;nbsp; '67409ef165858f3a29ab2fe5fd4dbe16' =&amp;gt; '4',&lt;br /&gt;&amp;nbsp; '85e924cd88a7df47d7c8559d9d67ee38' =&amp;gt; '5',&lt;br /&gt;&amp;nbsp; '4c862c8742905570097dc5b935d2eb34' =&amp;gt; '6',&lt;br /&gt;&amp;nbsp; 'a31caa27611fd5bdbdcc9a61a198e4e1' =&amp;gt; '7',&lt;br /&gt;&amp;nbsp; '89dcbdeef46047092e5cb8cfbb198fb0' =&amp;gt; '8',&lt;br /&gt;&amp;nbsp; '1ec661fda84b56478eff2945b0cb256b' =&amp;gt; '9',&lt;br /&gt;&amp;nbsp; '736534681a7345b992a2fe96b903a235' =&amp;gt; '10',&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/font&gt;
&lt;div style=&quot;FONT-WEIGHT: bold&quot;&gt;&lt;font size=&quot;3&quot;&gt;我的相关日志：&lt;/font&gt;&lt;/div&gt;&lt;br /&gt;&lt;font size=&quot;3&quot;&gt;2010-01-21&amp;nbsp;|&amp;nbsp;&lt;/font&gt;&lt;a title=&quot;关于循环中的变量问题&quot; href=&quot;http://iamcaihuafeng.blog.sohu.com/142868906.html&quot; target=&quot;_blank&quot;&gt;&lt;font size=&quot;3&quot;&gt;关于循环中的变量问题&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;font size=&quot;3&quot;&gt;2010-01-17&amp;nbsp;|&amp;nbsp;&lt;/font&gt;&lt;a title=&quot;关于进程的一点信息&quot; href=&quot;http://iamcaihuafeng.blog.sohu.com/142502793.html&quot; target=&quot;_blank&quot;&gt;&lt;font size=&quot;3&quot;&gt;关于进程的一点信息&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;font size=&quot;3&quot;&gt;2010-01-17&amp;nbsp;|&amp;nbsp;&lt;/font&gt;&lt;a title=&quot;PHP中system及exec的用法&quot; href=&quot;http://iamcaihuafeng.blog.sohu.com/142494397.html&quot; target=&quot;_blank&quot;&gt;&lt;font size=&quot;3&quot;&gt;PHP中system及exec的用法&lt;/font&gt;&lt;/a&gt;&lt;/div&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/331034713/sohublog/feedsky/s.gif?r=http://iamcaihuafeng.blog.sohu.com/143057695.html&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/sohublog/331034713/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/sohublog/331034713/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=b028237b4072d6dacc3f67d410ceb928&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=b028237b4072d6dacc3f67d410ceb928&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=f4bf3f988bd92e722bd71c15a44f6fc3&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=f4bf3f988bd92e722bd71c15a44f6fc3&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=7584aca508f45345e78ede3c3a23c3f6&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=7584aca508f45345e78ede3c3a23c3f6&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=783baef566ed41a8b49d1594bd77252c&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=783baef566ed41a8b49d1594bd77252c&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=dfbd3f69e5c04281538c386f0de0535d&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=dfbd3f69e5c04281538c386f0de0535d&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=123b26554282458d18f721c7c61436b1&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=123b26554282458d18f721c7c61436b1&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=10cbc7b7a0f0b88e4e2fc6b0466b7a56&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=10cbc7b7a0f0b88e4e2fc6b0466b7a56&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/sohublog?a=469de5299f1d32919bc9f23e0257a6c9&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/sohublog?i=469de5299f1d32919bc9f23e0257a6c9&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</description><category>LAMP</category><pubDate>Sun, 24 Jan 2010 18:56:36 +0800</pubDate><author>nlfd</author><comments>http://iamcaihuafeng.blog.sohu.com/143057695.html#comment</comments><guid isPermaLink="false">http://iamcaihuafeng.blog.sohu.com/143057695.html</guid><dc:creator>nlfd</dc:creator><fs:srclink>http://iamcaihuafeng.blog.sohu.com/143057695.html</fs:srclink><fs:srcfeed>http://iamcaihuafeng.blog.sohu.com/rss</fs:srcfeed><fs:itemid>feedsky/sohublog/~7143576/331034713/5252344</fs:itemid></item></channel></rss>