这就是技术吧


开启 PHPWind 的静态路径

在论坛这种动态网站中,开启静态路径对网站的 SEO 是很有好处的。
要在 PHPWind 中开启静态路径,需要在 Apache 中加载 Mod_rewrite 模块。这个模块如何加载,请大家自行在网络中搜索。

进入 PHPWind 的后台,打开“静态目录部署”页面
(continue reading…)


Rhythmbox 中 MP3 TAG 乱码问题

在 ubuntu 里使用 Rhythmbox 导入音乐目录后,有很多的 MP3 的 TAG 信息都显示成了乱码,这个问题应该是由文字编码引起的。
网上找到了一些解决办法,可以把MP3文件的TAG编码改成 Rhythmbox 认的,我没选这种,我是选择修改环境变量,让程序去适应编码。
编辑 ~/.profile 文件
加入:

export GST_ID3_TAG_ENCODING=GBK:UTF-8:GB18030
export GST_ID3V2_TAG_ENCODING=GBK:UTF-8:GB18030

重新登录系统后,再重新在 Rhythmbox 里导入一下音乐目录就可以了。


Apache、PHP、MySQL 的安装

这里只是简单的一个说明,请根据自己的实际情况进行安装

在 Windows 下安装 PHP 的开发环境,要装的东西有
Apache、php、MySQL、文本编辑器
(continue reading…)


在 OpenSolaris 里安装包出错

我的 OpenSolaris 是 2009.06 版,在 Packager Manager 里把 http://pkg.opensolaris.org/dev 加到了 publisher 里,叫做 “dev”,一开始用着没什么问题,安装新程序包都正常。后来就不行了,在安装新的包时出这个错误:

The following pattern(s) did not match any packages in the current catalog.
Try relaxing the pattern, refreshing and/or examining the catalogs:

查了网上很长时间,终于在这里找到了,地址:http://www.lildude.co.uk/cant-install-pkg-on-opensolaris-snv_127/
只不过他是只有 dev,没有 opensolaris.org 这个 publisher,我虽然有这个,但地址还是原来的 http://pkg.opensolaris.org/release,和 dev 有冲突,按 http://pkg.opensolaris.org/dev/en/index.shtml 的说法,执行:

$ pfexec pkg set-publisher -O http://pkg.opensolaris.org/dev opensolaris.org
$ pfexec pkg image-update

问题就解决了,可以装新的程序包了


64位linux下使用flash

Adobe Labs 发布了 flash 10 的 64 位 beta 版,去 http://labs.adobe.com/technologies/flashplayer10/ 下载一个
解压出一个 .so 文件,放到 ~/.mozilla/plugins 里(如果没有 plugins 这个文件夹就自己建一个)
重启 firefox 就可以了


求助大家,有没有人发现过 firefox 的这个问题

Screenshot-Mozilla Firefox
我的设置应该是菜单栏不显示,下面是一条工具栏,再下面是 del.icio.us 的书签栏,就没有了
最近打开 firefox 时,经常是这个书签栏什么都没有,就是一个空条
谁有没有也遇到这种情况的?怎么解决呢?


让 phpwind 论坛禁止某些邮箱的注册

换用 phpwind 做为论坛系统后,注册机乱注册的用户就一堆一堆的过来,为了阻止注册机的注册,启用了比较复杂的验证码,把注册文件改名、邮件验证等,做了这些之后,确实挡住了一大部分的注册机。消停了一阵后,又来了,还好,这些注册机注册时使用的邮箱都是某些固定后缀,好办了,在注册过程中禁止这些后缀的注册。
phpwind 论坛只提供了允许指定邮箱注册的功能,那不行啊,我是想禁止指定邮箱的注册,phpwind 论坛并没有提供这样的功能,在 phpwind 的官方论坛上,有不少人建议增加这个功能,直到 7.3.2 版还是没有增加。咱们只能是自己动手了。

2009.12.04注释:可以略过这段,往下看更新过的代码
好,修改注册文件,一般是 register.php,找到这些,大概是在 73 行:

if (!$email || !preg_match("/^[-a-zA-Z0-9_\.]+@([0-9A-Za-z][0-9A-Za-z-]+\.)+[A-Za-z]{2,5}$/",$email)) {
	echo 1;
	ajax_footer();
}

这段代码就是验证注册的邮箱是否合法,那好,在下面加这些就可以了:

if (strpos($email, "@designhot.net.cn")) {
  echo 1;
  ajax_footer();
}

意思就是说,如何邮箱是以“@designhot.net.cn”结尾的,那就是非法了,哈哈,搞死你注册机
要是禁止多个呢,就把这段多写几遍就好了。
还有,再找到这句:

if (empty($regemail) || !ereg("^[-a-zA-Z0-9_\.]+\@([0-9A-Za-z][0-9A-Za-z-]+\.)+[A-Za-z]{2,5}$",$regemail)) {
	Showmsg('illegal_email');
}

在这后面加上:

else if (strpos($regemail, "@designhot.net.cn")) {
	Showmsg('illegal_email');
}

同样,如果有多个要禁止的邮箱,就把上面这句多写几遍就好了。
我发现的注册机的后缀有:
@designhot.net.cn
@cpok-bdqn.com.cn
@bdqncpok.com.cn
@bdqnok-cp.com.cn
@cp-bdqnok.com.cn
@company-mail.cn
@delu(这个比较烦,有 @delu1.com、@delu8.com 等)
@newline.net.cn
@marketnet.com.cn
@hongkong-seo.com

2009.12.03更新,偶然无聊,发现老窝了,这些都是一个地方出来的:
@chongsoft.org
@wormseo.cn
@wormseo.com
@chongsoft.cn
@zyseo.com
@seorj.cn
@qqneiyi.cn
@chongblog.cn
@chongblog.com
@71mail.com.cn
@designhot.net.cn
@marketnet.com.cn
@newline.net.cn
@company-mail.cn
@cpok-bdqn.com.cn
@cp-bdqnok.com.cn
@bdqncpok.com.cn
@bdqnok-cp.com.cn
@bdqn-hicp.com.cn
@wormsoft.cn
@chongseo.net
@chongseo.cn
@chongseo.com
@huiseo.cn
@csoftmail.cn
@xdseo.com
不用说,都屏蔽丫

2009.12.04更新
越来越多的邮箱都发垃圾,为了方便改代码,上面说的代码可以不用考虑了,用下面这个好了:
还在 register.php 文件里,先在文件开头部分,大概第10行左右,就是“if (GetGP(‘vip’) == ‘activating’) {”之前,写一个自己的函数:

function osnaile_isgoodmail($email) {
	$spamemail = array(
"@chongsoft.org",
"@wormseo.cn",
"@wormseo.com",
"@chongsoft.cn",
"@zyseo.com",
"@seorj.cn",
"@qqneiyi.cn",
"@chongblog.cn",
"@chongblog.com",
"@71mail.com.cn",
"@designhot.net.cn",
"@marketnet.com.cn",
"@newline.net.cn",
"@company-mail.cn",
"@cpok-bdqn.com.cn",
"@cp-bdqnok.com.cn",
"@bdqncpok.com.cn",
"@bdqnok-cp.com.cn",
"@bdqn-hicp.com.cn",
"@wormsoft.cn",
"@chongseo.net",
"@chongseo.cn",
"@chongseo.com",
"@huiseo.cn",
"@csoftmail.cn",
"@delu",
"@hongkong-seo.com",
"@xdseo.com"
);
	foreach ($spamemail as &$spam) {
		if (strpos($email, $spam)) {
			return false;
		}
	}
	return true;
}

好,然后再找到这些,大概是在 73 行:

if (!$email || !preg_match("/^[-a-zA-Z0-9_\.]+@([0-9A-Za-z][0-9A-Za-z-]+\.)+[A-Za-z]{2,5}$/",$email)) {
	echo 1;
	ajax_footer();
}

后面加上:

		if (!osnaile_isgoodmail($email)) {
			echo 1;
			ajax_footer();
		}

再找到这句:

if (empty($regemail) || !ereg("^[-a-zA-Z0-9_\.]+\@([0-9A-Za-z][0-9A-Za-z-]+\.)+[A-Za-z]{2,5}$",$regemail)) {
	Showmsg('illegal_email');
}

在这后面加上:

	else if (!osnaile_isgoodmail($regemail)) {
		Showmsg('illegal_email');
	}

2010.06.04更新:
在 phpwind 7.5 中已经有邮箱黑名单功能了,只要在后台里设置好黑名单就行了
黑名单列表:

qsseo.com,seoyw.com,chongsoft.org,wormseo.cn,wormseo.com,chongsoft.cn,zyseo.com,seorj.cn,qqneiyi.cn,chongblog.cn,chongblog.com,71mail.com.cn,designhot.net.cn,marketnet.com.cn,newline.net.cn,company-mail.cn,cpok-bdqn.com.cn,cp-bdqnok.com.cn,bdqncpok.com.cn,bdqnok-cp.com.cn,bdqn-hicp.com.cn,wormsoft.cn,chongseo.net,chongseo.cn,chongseo.com,huiseo.cn,csoftmail.cn,xdseo.com,designhot.net.cn,cpok-bdqn.com.cn,bdqncpok.com.cn,bdqnok-cp.com.cn,cp-bdqnok.com.cn,company-mail.cn,delu1.com,delu2.com,delu3.com,delu4.com,delu5.com,delu6.com,delu7.com,delu8.com,newline.net.cn,marketnet.com.cn,hongkong-seo.com,shoesonlineshop.org,siteposter.net

Mozilla Thunderbird 与 Windows Mobile 之间的同步

Windows Mobile 最好的同步对象还是 Microsoft Outlook,如果要是想让 Thunderbird 和 WM 之间进行同步,还是有一些麻烦。我在网上找了找,有这么三个软件可以用。

1.BirdieSync

这个软件是个商业软件,在网上使用过的人的经验来看,这应该是最好用的了,价格是 19.95 欧元。

我没购买这个软件的意向,所以也就没有详细地试用。

这个软件的网址是:http://www.birdiesync.com/,有兴趣的朋友可以去试试,试用版提供了21天的全功能试用。来自http://osnaile.osdn.cn/

2.FinchSync

我现在用的是这个软件,免费软件。

这个软件是由 PC 端和 PPC 端组成。

PC端,是用纯 JAVA 写成的,需要 JRE 1.4.2 及以上版本,PPC 端是用 .net framework 写的,在 PPC2002 和 Windows Mobile 2003 及以上的系统都可以使用。

首先下载 PC 端程序,是一个 JAR 的程序包,运行就可以了,然后开始设置。

这是启动程序后的界面:

PC端界面

上面有三个标签页:

Activity:显示当前正在活动的同步任务

Sync Source:同步源的设置

Clients:客户端的设置

先配置整体的服务,在File 菜单里的 Server Configuration,显示如下:来自http://osnaile.osdn.cn/

serversetting

设置好要使用的端口就可以了。

Sync Source 设置:

serversource

这上面显示了我的设置好的一条同步源,要加入新的源,点击“Add”按钮:

serversourcesetup1

写好名字,这个名字只支持字母和数字,用中文不成,点“Next”

serversourcesetup2

源下拉选择要同步的内容,我这里写的是 Mozilla/Thunderbird/Netscape Address Book

然后“Browser”选择联系人所使用的文件,一般是 mab 后缀的。

接着设置 Clients:

serverclient

同样,这是我一个设置好的客户端,增加新的点“Add”来自http://osnaile.osdn.cn/

serverclientsetup1

在 Name 里写上PPC 的名字,可以随便写

设置好密码,然后再点“Add”来加入刚刚设置的源

serverclientsetup2

这里的下拉就是刚刚在“Sync Source”里设置同步源的名称,选择后,就可以了。

PC 端的设置就这些,然后再设置一下 PPC 端的程序。

PPC 端是一个 CAB 的安装包,复制到 PPC 里安装好,运行后界面:

ppcinterface

如果是第一次运行,那界面中的下拉里是没有任何项目的,要先进行配置。

运行“Config”菜单中的“Server”,显示出可用的同步源,第一次设置是什么的没有的,要先“Add”

ppcserver

点“Add”后,出现界面:来自http://osnaile.osdn.cn/

ppcconfig

输入 PC 端的 IP 地址,在 PC 端的主界面下的状态栏里就有显示。

Login 和 Password 就是刚刚在 PC 端的 Clients 里设置的,都写好后,先测试一下,点“Test” :

ppctest

点一下“connect”,如果设置正确,就会列出这个同步源都有什么项目:

ppctestresult

Type为 “C”,是表示 Contact,后面的 X 可不是“不可能”,是“选中”的意思。

好了,现在就可以回到主界面上,点“Sync it” 了。

这样 Thunderbird 里的联系就可以同步到 PPC 里了。

注意,我在网上看到有很多人说不能正确运行,我很幸运,这个软件在我这里可以使用。来自http://osnaile.osdn.cn/

网址:http://www.finchsync.com/

3.Funambol Mozilla Sync Client

这个软件是个开源软件,我粗略地看了一下,是由? Client -> Server -> Client 来实现同步的。

就是说,你可以先把 Thunderbird 里的联系人、任务、日历等信息同步到他的网站上,然后再到 PPC 里去同步这个网站,来达到同步的效果。

如果你不想用他的网站,也可以下载 Funambol Server,自己架设一个小的服务端,有 Windows 和 Linux 两个版本的选择。

然后再分别安装 Thunderbird 和 PPC 的插件,就可以使用了。

我觉得有些复杂,就没有使用。来自http://osnaile.osdn.cn/

网址:http://www.forge.funambol.org/


压缩 VirtualBox 的 VDI 文件

用 Sun VirtualBox 软件虚拟出来的硬盘文件是 VDI 文件,这个文件会随着使用而变大,因为磁盘碎片的产生,这个文件里也有很多的没用的空闲空间,为了节省空间,就需要对 VDI 文件进行压缩。

压缩分三步,1.在虚拟系统中进行碎片整理;2.在虚拟系统中把空闲空间标记为 0;3.在宿主系统中收缩 VDI 文件。

第一步,碎片整理可以用系统自带的,也可以使用第三方软件。

第二步,使用 “sdelete” 把空闲空间标记为 0,下载地址:http://technet.microsoft.com/en-us/sysinternals/bb897443.aspx
命令:sdelete.exe -c c:

第三步,收缩

收缩有两个办法,一个是使用 VirtualBox 自带的 VBoxManage.exe,命令格式是:

VBoxManage modifyhd VDI文件名 compact

不过,我在使用这个命令时出错了,错误信息是:“Shrink hard disk operation is not implemented!”(貌似之后的版本可以用了,2010.08.09更新)

我在网上也查了这个错误,有不少人也遇到了同样的问题。

有高人写了一段小代码,实现了这个功能,PackVDI,下载地址:http://jerome.hode.free.fr/opensource/PackVDI.zip

执行 PackVDI 文件名即可。

注:本文内容在主机为 Windows 和 ubuntu 10.04 环境下测试过,VirtualBox 版本:3.2.8


  • 广告

  • 订阅更新

    邮件地址:

  • 分类目录

  • 最新评论

  • 声明

    Creative Commons License
    本作品采用知识共享署名-非商业性使用-相同方式共享 3.0 Unported许可协议进行许可。
    个人博客转载时请遵循“署名-非商业性使用-相同方式共享”的创作共用协议
    商业网站或未授权媒体不得复制本站内容
  • Copyright © 1996-2010 馋嘴蜗牛. All rights reserved.
    iDream theme by Templates Next | Powered by WordPress