Apr
18
现在只要加入我修改的这个小东西,那么在有访客留言、评论、申请链接的时候,
我的139邮箱就会收到一封邮件,而中国移动139信箱在收到邮件以后会自动往我的手机发邮件主题。。。
噢也~~~
-------------我就是那华丽的分割线---------------
Hack for Bo-blog 2.1.0+
当有访客留言或评论、申请链接时向指定邮箱发送邮件
2009-04-18
By Felix021 @ http://www.felix021.com
Mail: i[at]felix021.com
使用说明:
1。将目录fm放置到blog/inc下面,修改fm/felix_mail.php第4~8行的四个参数。如果你的空间支持SMTP,这么就OK了,如果不支持,可以修改下面的内容,通过你的邮箱提供商的SMTP服务器发送邮件,但是这样在评论和留言的时候会稍稍卡一下。
2。将mod_visit.php中171行到189行的内容(可以适当自定义)放到blog/inc/mod_visit.php的相应位置(不知道v2.1.1是怎样的,反正我的2.1.0测试是OK了,应该可以直接用文件覆盖)。注意不要把177行的16改大,因为phpmailer的限制,UTF-8编码下,邮件主题最大16个字符,不知道是什么问题,如果有谁搞清楚了,一定记得通知我一下~~~
3。将mod_login.php中280行到284行的内容方到blog/inc/mod_login.php的对应位置,注意事项同上。
4。接收邮件的邮箱建议使用中国移动的139邮箱,因为这样可以直接发短信告诉你有新的评论/通知/链接了。
下载文件 (已下载 1732 次)
--
本来想发到bo-blog论坛去,但是论坛原先的用户名的密码不记得了,163邮箱没收到重置邮件
新注册一个用户,i@这个邮箱又没收到验证邮件
得,我困得很,还不如去睡觉。
我的139邮箱就会收到一封邮件,而中国移动139信箱在收到邮件以后会自动往我的手机发邮件主题。。。
噢也~~~
-------------我就是那华丽的分割线---------------
Hack for Bo-blog 2.1.0+
当有访客留言或评论、申请链接时向指定邮箱发送邮件
2009-04-18
By Felix021 @ http://www.felix021.com
Mail: i[at]felix021.com
使用说明:
1。将目录fm放置到blog/inc下面,修改fm/felix_mail.php第4~8行的四个参数。如果你的空间支持SMTP,这么就OK了,如果不支持,可以修改下面的内容,通过你的邮箱提供商的SMTP服务器发送邮件,但是这样在评论和留言的时候会稍稍卡一下。
2。将mod_visit.php中171行到189行的内容(可以适当自定义)放到blog/inc/mod_visit.php的相应位置(不知道v2.1.1是怎样的,反正我的2.1.0测试是OK了,应该可以直接用文件覆盖)。注意不要把177行的16改大,因为phpmailer的限制,UTF-8编码下,邮件主题最大16个字符,不知道是什么问题,如果有谁搞清楚了,一定记得通知我一下~~~
3。将mod_login.php中280行到284行的内容方到blog/inc/mod_login.php的对应位置,注意事项同上。
4。接收邮件的邮箱建议使用中国移动的139邮箱,因为这样可以直接发短信告诉你有新的评论/通知/链接了。

--
本来想发到bo-blog论坛去,但是论坛原先的用户名的密码不记得了,163邮箱没收到重置邮件
新注册一个用户,i@这个邮箱又没收到验证邮件
得,我困得很,还不如去睡觉。
Apr
13
因为网络程序设计课程要求做一个扩展型的作业,其中一个选项是ftp client。于是我就选了这个。
做完以后发现其实不难,而最难的地方,在于了解FTP协议的工作过程。
下面随便闲扯一点东西吧。
在网络上,经常遇到的应用层协议包括HTTP,FTP,SMTP,POP3,都使用TCP协议连接,感觉挺像的。
HTTP协议显然是最常见的,在客户端和服务器之间只有一条连接,既传输控制命令(HTTP头),也传输数据(HTTP实体)
因此在编写动态网页脚本的时候,一定要先输出header,然后才输出HTML代码。
FTP协议则采用两条连接,一条控制连接,一条数据连接。
控制连接用于传输控制命令,始终保持连接,直到客户端发出QUIT命令结束连接;
数据连接在需要传输数据的时候打开(发起端可以是客户端也可以是服务器),传输完毕后就断开。
FTP的数据连接有两种模式,一种是主动模式,一种是被动模式(PASV, Passive Mode)。
采用主动模式时,客户端监听一个本地端口,由服务器发起连接传输数据;
而采用被动模式时,则是由服务器打开一个端口,客户端发起连接接收数据。
下面我用telnet来模拟一个FTP客户端连接、登陆、使用被动模式传输文件并退出的完整过程:
做完以后发现其实不难,而最难的地方,在于了解FTP协议的工作过程。
下面随便闲扯一点东西吧。
在网络上,经常遇到的应用层协议包括HTTP,FTP,SMTP,POP3,都使用TCP协议连接,感觉挺像的。
HTTP协议显然是最常见的,在客户端和服务器之间只有一条连接,既传输控制命令(HTTP头),也传输数据(HTTP实体)
因此在编写动态网页脚本的时候,一定要先输出header,然后才输出HTML代码。
FTP协议则采用两条连接,一条控制连接,一条数据连接。
控制连接用于传输控制命令,始终保持连接,直到客户端发出QUIT命令结束连接;
数据连接在需要传输数据的时候打开(发起端可以是客户端也可以是服务器),传输完毕后就断开。
FTP的数据连接有两种模式,一种是主动模式,一种是被动模式(PASV, Passive Mode)。
采用主动模式时,客户端监听一个本地端口,由服务器发起连接传输数据;
而采用被动模式时,则是由服务器打开一个端口,客户端发起连接接收数据。
下面我用telnet来模拟一个FTP客户端连接、登陆、使用被动模式传输文件并退出的完整过程:
Apr
5
话说以前对这种微博客有一点点反感,不过试了一下,觉得还是挺方便的
QQ签名什么的直接就可以更新进来,也省得我去改公告了。
不过腾讯的滔滔有一点很不爽,就是有些很废的东西,比如“通过 xxx 发布”,以及多余的taotao的logo,不好看。
特别是对于我的这个blog模板,本来就小,还占空间。
于是就写了一小段脚本,去掉这些多余的字符。
参照我的代码吧:
QQ签名什么的直接就可以更新进来,也省得我去改公告了。
不过腾讯的滔滔有一点很不爽,就是有些很废的东西,比如“通过 xxx 发布”,以及多余的taotao的logo,不好看。
特别是对于我的这个blog模板,本来就小,还占空间。
于是就写了一小段脚本,去掉这些多余的字符。
参照我的代码吧:
<!--这里是腾讯给的代码的第一句-->
<script type="text/javascript">var taotao_qq=19880711; var taotao_num=3;var taotao_type=0;</script>
<div id="taotao">
<!--这里是腾讯给的代码的第二句-->
<script type="text/javascript" charset="utf-8" src="http://www.taotao.com/js/dkapi.js"></script>
</div>
<script>
try{
var divtao = document.getElementById("taotao");
var re1 = new RegExp("<span[^>]*?>通过[^<]*?</span>", "ig");
str = divtao.innerHTML.replace(re1, "");
var re2 = new RegExp("<a[^>]*?>(.*?)</a>", "ig");
str = str.replace(re2, "($1)");
var re3 = new RegExp("<table[^>]*?>.*?</table>", "ig");
str = str.replace(re3, "");
var re4 = new RegExp("<span>(.*?)</span>", "ig");
str = str.replace(re4, "<b>~ $1</b>");
divtao.innerHTML = str;
}catch(e){}
</script>
<script type="text/javascript">var taotao_qq=19880711; var taotao_num=3;var taotao_type=0;</script>
<div id="taotao">
<!--这里是腾讯给的代码的第二句-->
<script type="text/javascript" charset="utf-8" src="http://www.taotao.com/js/dkapi.js"></script>
</div>
<script>
try{
var divtao = document.getElementById("taotao");
var re1 = new RegExp("<span[^>]*?>通过[^<]*?</span>", "ig");
str = divtao.innerHTML.replace(re1, "");
var re2 = new RegExp("<a[^>]*?>(.*?)</a>", "ig");
str = str.replace(re2, "($1)");
var re3 = new RegExp("<table[^>]*?>.*?</table>", "ig");
str = str.replace(re3, "");
var re4 = new RegExp("<span>(.*?)</span>", "ig");
str = str.replace(re4, "<b>~ $1</b>");
divtao.innerHTML = str;
}catch(e){}
</script>
Feb
24
www.felix021.com 这个域名被处理了,不能通过浏览器直接访问了,urlforwad到ctc.felix021.com
由于meyu的邮件里面说到,不影响搜索引擎收录,所以这么测试了一下,还挺有意思
由于meyu的邮件里面说到,不影响搜索引擎收录,所以这么测试了一下,还挺有意思
引用
felix021@felix021-laptop:~$ telnet www.felix021.com
Trying 211.136.108.72...
telnet: Unable to connect to remote host: Connection refused
felix021@felix021-laptop:~$ telnet www.felix021.com 80
Trying 211.136.108.72...
Connected to www.felix021.com.
Escape character is '^]'.
GET /index.php HTTP/1.1
Host: www.felix021.com
User-agent: MSIE
HTTP/1.0 302 Moved Temporarily
Server: squid
Date: Tue, 24 Feb 2009 09:15:20 GMT
Content-Type: text/html
Content-Length: 0
Expires: Tue, 24 Feb 2009 09:15:20 GMT
Location: http://67.213.219.111/beian.html
X-Squid-Error: 403 Access Denied
X-Cache: MISS from domain123.com
Via: 1.0 domain123.com:80 (squid)
Connection: close
Connection closed by foreign host.
Trying 211.136.108.72...
telnet: Unable to connect to remote host: Connection refused
felix021@felix021-laptop:~$ telnet www.felix021.com 80
Trying 211.136.108.72...
Connected to www.felix021.com.
Escape character is '^]'.
GET /index.php HTTP/1.1
Host: www.felix021.com
User-agent: MSIE
HTTP/1.0 302 Moved Temporarily
Server: squid
Date: Tue, 24 Feb 2009 09:15:20 GMT
Content-Type: text/html
Content-Length: 0
Expires: Tue, 24 Feb 2009 09:15:20 GMT
Location: http://67.213.219.111/beian.html
X-Squid-Error: 403 Access Denied
X-Cache: MISS from domain123.com
Via: 1.0 domain123.com:80 (squid)
Connection: close
Connection closed by foreign host.
引用
$ felix021@felix021-laptop:~$ telnet www.felix021.com 80
Trying 211.136.108.72...
Connected to www.felix021.com.
Escape character is '^]'.
GET /index.php HTTP/1.1
Host: www.felix021.com
User-agent: baiduspider(http://www.baidu.com/)
HTTP/1.0 200 OK
Date: Tue, 24 Feb 2009 09:14:29 GMT
Server: Apache/2
X-Powered-By: PHP/5.2.5
Vary: Accept-Encoding,User-Agent
Content-Length: 1040
Content-Type: text/html
X-Cache: MISS from domain123.com
Via: 1.0 domain123.com:80 (squid)
Connection: close
~~然后是index.php的内容,不贴了~~
Trying 211.136.108.72...
Connected to www.felix021.com.
Escape character is '^]'.
GET /index.php HTTP/1.1
Host: www.felix021.com
User-agent: baiduspider(http://www.baidu.com/)
HTTP/1.0 200 OK
Date: Tue, 24 Feb 2009 09:14:29 GMT
Server: Apache/2
X-Powered-By: PHP/5.2.5
Vary: Accept-Encoding,User-Agent
Content-Length: 1040
Content-Type: text/html
X-Cache: MISS from domain123.com
Via: 1.0 domain123.com:80 (squid)
Connection: close
~~然后是index.php的内容,不贴了~~
Feb
4
zz from http://hi.baidu.com/cf881001/blog/item/88510d39f38a5b2496ddd85c.html
png透明 AlphaImageLoader
filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled=bEnabled,sizingMethod=sSize,src=sURL)
enabled:可选项。布尔值(Boolean)。设置或检索滤镜是否激活。true:默认值。滤镜激活。false:滤镜被禁止。
sizingMethod:可选项。字符串(String)。设置或检索滤镜作用的对象的图片在对象容器边界内的显示方式。crop:剪切图片以适应对象尺寸。image:默认值。增大或减小对象的尺寸边界以适应图片的尺寸。scale:缩放图片以适应对象的尺寸边界。
src:必选项。字符串(String)。使用绝对或相对 url 地址指定背景图像。假如忽略此参数,滤镜将不会作用。
禁止选取网页内容
在IE中一般用js:obj.onselectstart=function(){return false;}
而firefox用CSS:-moz-user-select:none
滤镜的支持(例:透明滤镜)
png透明 AlphaImageLoader
filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled=bEnabled,sizingMethod=sSize,src=sURL)
enabled:可选项。布尔值(Boolean)。设置或检索滤镜是否激活。true:默认值。滤镜激活。false:滤镜被禁止。
sizingMethod:可选项。字符串(String)。设置或检索滤镜作用的对象的图片在对象容器边界内的显示方式。crop:剪切图片以适应对象尺寸。image:默认值。增大或减小对象的尺寸边界以适应图片的尺寸。scale:缩放图片以适应对象的尺寸边界。
src:必选项。字符串(String)。使用绝对或相对 url 地址指定背景图像。假如忽略此参数,滤镜将不会作用。
禁止选取网页内容
在IE中一般用js:obj.onselectstart=function(){return false;}
而firefox用CSS:-moz-user-select:none
滤镜的支持(例:透明滤镜)
Jan
29
Simple PHP UBB Editor By Felix021
2009-01-29 @ http://www.felix021.com
简单小巧(只有10KB哦)的UBB编辑器,图片来自Bo-blog自带的UBB编辑器
使用说明:
1. <textarea id="content"></textarea>
要指定id为content,或者修改myubb.js里面的 var textarea_id = "content";
2. <script src="myubb.js"></script>
编辑器页面要加入这一句
3. 在CSS里面自己指定 .code 和 .quote 的样式
4. 可以配合felix021的代码高亮工具
详见 http://www.felix021.com/blog/read.php?1371
下载文件 (已下载 1695 次)
2009-01-29 @ http://www.felix021.com
简单小巧(只有10KB哦)的UBB编辑器,图片来自Bo-blog自带的UBB编辑器
使用说明:
1. <textarea id="content"></textarea>
要指定id为content,或者修改myubb.js里面的 var textarea_id = "content";
2. <script src="myubb.js"></script>
编辑器页面要加入这一句
3. 在CSS里面自己指定 .code 和 .quote 的样式
4. 可以配合felix021的代码高亮工具
详见 http://www.felix021.com/blog/read.php?1371

Jan
11
1. 在Windows下面
很简单的哦,打开 开始->附件->调制解调器链接
选择"USB"(当然,也可以选择Infrared,红外,不过现在本本用红外的不多了),点击"激活"
然后下载这个东东,解压缩到某一个地方:
下载文件 (已下载 1624 次)
接着把手机连电脑上,如果选择的是USB就用USB,或者用你选择的蓝牙/红外,都OK。
你会发现,电脑上会弹出“发现新硬件”,Good
在安装驱动的时候选择在刚刚那个压缩包解压出来的SP USB MODEM目录,让系统自动安装
安装好以后呢,打开解压缩后的Dialer.exe
在APN那一栏输入cmnet,选择 Connect
然后很快你就会连上拉,而且还会在“网络连接”里面生成一个拨号连接,以后用这个就OK了。
2. 在Linux(我用的Ubuntu)下面
看了这篇文章,然后自己处理了一下,把它搞定了:
refering http://www.4winmobile.com/forums/phone-edition-general/16623-using-your-phone-modem-linux.html
首先,通过其他方式连到Internet,运行以下命令:
或者也可以从这里下载源码,然后再编译安装
下载文件 (已下载 1538 次)
OK,然后打开 开始->附件->调制解调器链接 选择"USB",点击 激活
接着把你的手机连到USB口上,点击网络管理器(Network Manager),就是屏幕上面两个小电脑的图标
然后你就会发现有一个 "自动移动宽带(CDMA)连接" ,可是我用的是GPRS阿,用它总是连不上
于是右键单击网络管理器(Network Manager),选择 编辑连接 就会打开连接编辑页面
切换到移动宽带选项卡,双击自动移动宽带(CDMA)连接,把号码的#777改成 *99# 确定
然后再在网络管理器里面选择它,过一会儿就连上了,Congratulations!
很简单的哦,打开 开始->附件->调制解调器链接
选择"USB"(当然,也可以选择Infrared,红外,不过现在本本用红外的不多了),点击"激活"
然后下载这个东东,解压缩到某一个地方:

接着把手机连电脑上,如果选择的是USB就用USB,或者用你选择的蓝牙/红外,都OK。
你会发现,电脑上会弹出“发现新硬件”,Good
在安装驱动的时候选择在刚刚那个压缩包解压出来的SP USB MODEM目录,让系统自动安装
安装好以后呢,打开解压缩后的Dialer.exe
在APN那一栏输入cmnet,选择 Connect
然后很快你就会连上拉,而且还会在“网络连接”里面生成一个拨号连接,以后用这个就OK了。
2. 在Linux(我用的Ubuntu)下面
看了这篇文章,然后自己处理了一下,把它搞定了:
refering http://www.4winmobile.com/forums/phone-edition-general/16623-using-your-phone-modem-linux.html
首先,通过其他方式连到Internet,运行以下命令:
引用
sudo apt-get install subversion
svn co http://synce.svn.sourceforge.net/svnroot/synce/trunk/usb-rndis-lite
#上面是下载源码,下面是编译安装
cd usb-rndis-lite/
make
sudo ./clean.sh
sudo make install
svn co http://synce.svn.sourceforge.net/svnroot/synce/trunk/usb-rndis-lite
#上面是下载源码,下面是编译安装
cd usb-rndis-lite/
make
sudo ./clean.sh
sudo make install

OK,然后打开 开始->附件->调制解调器链接 选择"USB",点击 激活
接着把你的手机连到USB口上,点击网络管理器(Network Manager),就是屏幕上面两个小电脑的图标
然后你就会发现有一个 "自动移动宽带(CDMA)连接" ,可是我用的是GPRS阿,用它总是连不上
于是右键单击网络管理器(Network Manager),选择 编辑连接 就会打开连接编辑页面
切换到移动宽带选项卡,双击自动移动宽带(CDMA)连接,把号码的#777改成 *99# 确定
然后再在网络管理器里面选择它,过一会儿就连上了,Congratulations!
Jan
10
今天为了下载madwifi,一个4.22MB的程序,做的这个东西。
因为校园网实在太慢了,恰好我空间所在的服务器访问它的速度还可以。
于是就用这个东西,把它下载到我的服务器,然后再从服务器多线程下载下来。
很happy。
提供下载吧,源码很短的,连fsockopen都不要
只用了file_get_contents和file_put_contents,很好很强大。
下载文件 (已下载 1595 次)
Felix的简易文件下载工具 @ 2009.01.10
http://www.felix021.com
可以把别的地方的文件下载到你的空间,然后再通过下载工具下载到本地。
特别适用于教育网想要下载外网却无法完成的情况。
目前功能比较简单,基本的验证,禁止存放php文件。
谁有兴趣可以加入一个cookie功能,这样如果需要登录的网站的内容也就可以下载了
修改config.php替换自己的密码。
因为校园网实在太慢了,恰好我空间所在的服务器访问它的速度还可以。
于是就用这个东西,把它下载到我的服务器,然后再从服务器多线程下载下来。
很happy。
提供下载吧,源码很短的,连fsockopen都不要
只用了file_get_contents和file_put_contents,很好很强大。

Felix的简易文件下载工具 @ 2009.01.10
http://www.felix021.com
可以把别的地方的文件下载到你的空间,然后再通过下载工具下载到本地。
特别适用于教育网想要下载外网却无法完成的情况。
目前功能比较简单,基本的验证,禁止存放php文件。
谁有兴趣可以加入一个cookie功能,这样如果需要登录的网站的内容也就可以下载了
修改config.php替换自己的密码。