Building the Coming Soon

关于

HFLS aka the Akademia 12′, then NUST 16′, HKU 18′, now a Blue.

PHP

通过Linux系统Cron执行OwnCloud计划任务

02/02/2013

CRON的确是一个非常有用的功能,它有效减少了系统的负载,在将WordPress和StatusNet的任务计划都转换到Cron执行后,Kaijia决定将自己使用的OwnCloud也转换为Cron执行计划任务。

OwnCloud是一个开源的云储存方案,Kaijia在服务器上架构了一个OwnCloud云,充分利用多余的储存空间来储存一个代码的压缩包以便快捷部署。但与以往不同,OwnCloud的开发者文档比较少。关于任务计划,仅有管理页面->任务计划下的一行小字“Use systems cron service. Call the cron.php file in the owncloud folder via a system cronjob once a minute.”,由于并没有明确说明,所以Kaijia也只能在它的论坛中找资料,并在这篇讨论中获得了相关的信息。

阅读更多

iconv错误Detected an illegal character in input string问题解决

02/02/2013

在几天Kaijia还在改进@HFLS2012,新功能希望将旧版校网的数据整合到搜索中,在抓取旧版校网信息时遇到了一个问题。由于旧版校园网离现在已经10年多了,当时写的时候编码还是GB2312,但@HFLS2012编码是UTF-8所以需要将抓取到的内容转换为UTF-8字集。这个采集脚本是用php写的,在转换时Kaijia使用的是iconv函数,代码是:

程序写完后就去睡觉让它采集了,起来后发现遇到了很多PHP Notice错误“iconv(): Detected an illegal character in input string”,根据输出的日志回查发现报错的文章都没有采集完成,很多都在某个生僻字上中断。于是查询了一些资料,发现问题处在GB2312子集上,以下引用维基百科的解释

由于GB 2312-80只收录6763个汉字,有不少汉字,如部分在GB 2312-80推出以后才简化的汉字(如“啰”),部分人名用字(如中国前总理朱镕基的“镕”字),台湾及香港使用的繁体字,日语及朝鲜语汉字等,并未有收录在内。

阅读更多

WordPress Download Monitor下载文件名乱码问题简单规避方法

12/16/2012

WordPress Download Monitor插件存在上传或下载中文文件名乱码的问题已经存在了至少两三年,其间很多IT人联系过插件的原作者相关解决方案,但是直到今天插件作者仍然没有修复这个问题。

Kaijia在IMUNC.com中使用了WordPress Download Monitor,但由于最近上传文件的文件名一般都是“某某报名表.docx”,导致用户下载下来的文件都是“docx”,一般人无法打开就以为下载出错了。网上找了一些解决方案,都需要修改大量代码过于复杂,一旦插件更新都需要重头再修改一遍,于是想到了一个非常“Tricky”的规避办法。

阅读更多

WordPress Download Monitor插件的Nginx重定向规则

11/06/2012

Kaijia维护的IMUNC.com需要处理大量文件下载事务,于是启用了WordPress Download Monitor插件。由于Download Monitor默认的下载链接比较长,因此在Download Monitor Configuration中的Custom Download URL中将格式设置成了:

昨天因为访问速度原因将Web服务器从Apache换为Nginx后,发现Download Monitor的Rewrite规则无效了,于是Google找到一个thehook.eu提供的解决方案

阅读更多

Add From Server插件中文翻译包

10/24/2012

Add From Server是一个由Dion Hulse开发的WordPress插件,它可以通过FTP上传文件到WordPress媒体库中,从而解决文件太大上传失败的问题。

Kaijia前几个月要传一些大约100MB的视频文件到博客上来,使用WordPress自带的上传附件功能经常会出现由于网络不稳定传到一半失败的情况,另外部分主机商对上传有限制无法上传这么大的文件,所以需要通过FTP等方式先将大文件传到服务器上,在通过这个Add From Server插件导入到WordPress媒体库中。

阅读更多

PHP魔术常量__FILE__无法识别符号链接问题解决

10/20/2012

在PHP中,__FILE__魔术常量可以返回文件的完整路径和文件名。PHP手册中注明了它的功能:

文件的完整路径和文件名。如果用在被包含文件中,则返回被包含的文件名。自 PHP 4.0.2 起,__FILE__ 总是包含一个绝对路径(如果是符号连接,则是解析后的绝对路径),而在此之前的版本有时会包含一个相对路径。

但这个功能在Linux系统下使用符号链接(Symlink)时却会遇到麻烦,Kaijia之前在开发@HFLS 2012时曾经遇到过使用Symlink部署代码出现Apache错误的情况,之后写了一篇《Linux下Apache使用符号链接及权限问题解决》。最近在开发IMUNC全新官方网站时遇到了与之原因结果相反的问题。

阅读更多

扩展qTranslate多语言功能到全界面

10/14/2012

qTranslate是一个WordPress插件,可以将WordPress转化为多语言网站,这一点对于像Kaijia最近在折腾的IMUNC.com之类的面向世界各地模联人的网站来说是非常有用的。

默认情况下qTranslate在界面上只支持对文章、页面的多语言化,对于菜单、小工具等功能都没有提供多语言界面,不过插件在WordPress程序中加入了很多Hooks,所以实际上这些部分也是可以实现多语言化的,只是没有提供界面,需要手动输入。

阅读更多

Google Authenticator WordPress插件中文翻译包

10/03/2012

今天偶尔查阅Apache日志发现有人试图暴力破解博客密码,于是增加了Google Authenticator插件,并且制作了一个中文翻译包。

Google Authenticator是由Google提供的两步验证服务,它可以提高帐户的安全性,这个验证服务已经被应用到了包括Apache和SSH在内的各个系统。Henrik Schacks开发的这个插件使WordPress登录页面支持Google身份验证码和应用专用密码服务,减少帐户被暴力破解的难度。Kaijia今晚刚使用上这个插件,觉得很不错,于是翻译了中文版。

中文翻译文件下载地址:http://data.kaijia.me/2012/10/google-authenticator-zh_CN.zip

插件Wordpress官方页面在:http://wordpress.org/extend/plugins/google-authenticator/

安装完插件后将中文翻译包中的两个文件复制到google-authenticator/lang下就可显示中文。我已经联系了作者,相信他将会在下一个版本中加入这个翻译文件。

WordPress手动更新Rewrite缓存解决分类目录页面无法显示问题

10/02/2012

昨天重新架设Info Flow网站时遇到了十分郁闷的情况,在使用固定链接情况下点击所有的分类目录页显示的内容都是首页,这个情况之前也遇到过。考虑到这次使用的Info Flow 2012第1天的文件和第3天的数据库,之间启用了新的有关Custom Type的插件,Kaijia认为这种情况是由于Rewrite规则出现问题而造成的。

阅读更多

StatusNet无法使用中文TAG标签问题解决

08/25/2012

在StatusNet中输入中文标签时会显示一个提示:“Invalid tag:””.”,而当建立一个英文标签,然后再去修改为中文标签则是正常的。

Kaijia研究了一下代码,发现问题出在common_valid_profile_tag函数中,原函数中正则仅检测了英文字母和数字,未检测汉字,Kaijia的临时解决方案是修改lib/util.php中的common_valid_profile_tag函数为:

这是一个临时方案,只支持中文,不支持其他东亚语言,目前Kaijia已经将这个Bug回报了StatusNet,可以在此页查看之后开发者提供的方案。

较新文章
较旧文章
... 载入更多文章 ...

- 已经载入全部文章 -