Category Archives: tools

Bluehost没法安装mod_python

$ httpd -l
发现没装上 mod_python,网上搜一下,没找到有用的东西,于是给bluehost提交了一个ticket,希望他们能帮我装上。不多久就得到回复了:

Hello,
Thank you for choosing Bluehost. I understand you wish to use an apache module for Python. Unfortunately we do not offer mod_python and since it requires a recompile of apache we will be unable to implement it for you.

看样子是需要把之前写的程序改为CGI了。

python makes me happy :)

这几天用 Python写了个Android Market web client,新手上路,却出奇的顺利!apache2 + mod_python, mod_python 里的req很好用。本想用ruby写的,可是ruby对protobuf支持不是很好,php更没份了,在jsp与psp犹豫了一下,还是选择了后者。我问wayhome,有没有python psp的资料,他愣住了,说没有,psp是什么?我再补充,不是psp游戏机哦,是Python Server Pages,你搞python这么久不会没听说过?后来他说写cgi都用PEP333。搞什么,弄了大半天,原来psp是早已过时不用的技术了。

听说python的框架Django牛气轰轰,堪比Ruby之Rails,我翻了一下,弄懂这玩意,也需要花不少时间。弄几个页面,还是写cgi快,维护BBS都用C写过cgi,还怕不会用脚本写cgi? python的语法跟ruby差不多,以前在曾厝庵学生公寓图书馆看过一个下午,长时间不用也忘记光了,工作中很少用到,好像是安装项目管理软件Trac调试过,不过看apache error log,一般问题都可以诊断出错误位置。

人生真是阴差阳错。一直关注C/C++, PHP,Ruby,我想不会再学Java,Python之类的了。没想到今年工作主要是写Java程序 :( 用什么,就学什么,现学现用。哲学家告诉我们:变化是永恒的,没有一劳永逸。

参考资料:
http://modpython.org/live/current/doc-html/pyapi-psp.html
http://www.python.org/dev/peps/pep-0333/
http://www.djangobook.com/en/2.0/chapter01/

安装日志分析工具awstats

之前用Google Analytics分析网站,觉得多一次请求,对用户不太好,于是自己分析统计apache log。大约花了一个小时安装测试awstats,比预期的要顺利。

服务器是fedora,用yum安装很快。
[root@athena~]# yum install awstats

用默认的安装方法,/etc/httpd/conf.d/ 目录下面已经有了awstats.conf,如果没有,复制一个过去
# cp /usr/share/awstats/tools/httpd_conf /etc/httpd/conf.d/awstats.conf

编辑 /etc/httpd/conf.d/awstats.conf文件,默认的是:

<Directory "/usr/share/awstats/wwwroot">
    Options None
    AllowOverride None
    Order allow,deny
    Allow from 127.0.0.1
</Directory>

如果是外面的服务器,将 127.0.0.1改为 all

[root@athena~]# cp /etc/awstats/awstats.module.conf /etc/awstats/awstats.broncho.cn.conf
编辑/etc/awstats/awstats.broncho.cn.conf, 修改下面三项即可:
SiteDomain="broncho.cn"
LogFile="/var/log/httpd/broncho.cn_access_log.%YYYY-0%MM-0%DD-0"
Lang="cn"

[root@athena~]# cd /usr/share/awstats/wwwroot/cgi-bin
[root@athena cgi-bin]# ./awstats.pl -update -config=broncho.cn

发现:

Create/Update database for config “/etc/awstats/awstats.broncho.cn.conf” by AWStats version 6.8 (build 1.910)
From data in log file “/var/log/httpd/broncho.cn_access_log.20100927″…
Phase 1 : First bypass old records, searching new record…
Searching new records from beginning of log file…
AWStats did not find any valid log lines that match your LogFormat parameter, in the 50th first non commented lines read of your log.
Your log file /var/log/httpd/broncho.cn_access_log.20100927 must have a bad format or LogFormat parameter setup does not match this format.
Your AWStats LogFormat parameter is:1
This means each line in your web server log file need to have “combined log format” like this:
111.22.33.44 – – [10/Jan/2001:02:14:14 +0200] “GET / HTTP/1.1” 200 1234 “http://www.fromserver.com/from.htm” “Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)”
And this is an example of records AWStats found in your log file (the record number 50 in your log):
113.227.9.179 – – [27/Sep/2010:10:34:49 +0800] “GET /forum/styles/prosilver_se/theme/images/border_right.gif HTTP/1.1” 200 124
Setup (‘/etc/awstats/awstats.broncho.cn.conf’ file, web server or permissions) may be wrong.
Check config file, permissions and AWStats documentation (in ‘docs’ directory).

原来的日志按天分割的:

CustomLog “|/usr/local/sbin/cronolog /var/log/httpd/broncho.cn_access_log.%Y%m%d” common

按错误提示,修改为:

CustomLog "|/usr/local/sbin/cronolog /var/log/httpd/broncho.cn_access_log.%Y%m%d" combined

浏览 http://192.168.1.222/awstats/awstats.pl?config=broncho.cn 就可以看到效果。

定时分析日志,在服务器负载比较低的时候,一般是凌晨3,4点。

[root@athena~]# vim /usr/share/awstats/wwwroot/cgi-bin/awstats.sh

#!/bin/bash

cd /usr/share/awstats/wwwroot/cgi-bin
perl awstats.pl -update -config=broncho.cn

[root@athena~]# chmod 755 /usr/share/awstats/wwwroot/cgi-bin/awstats.sh

[root@athena~]# crontab -e
0 3 * * * /usr/share/awstats/wwwroot/cgi-bin/awstats.sh

升级 bugzilla 3.02 至 3.62

07年末到现在,bugzilla还没升级过。按照官方的文档操作,很不幸,cookie设置有问题,登录后,点别的页面,又要求输入用户名与密码,搞了一天,很烦躁。仔细检查 data/params 千百遍

'cookiedomain' => '',
'cookiepath' => '/',

应该没错。浏览器cookie也有保存了。想不出问题出现在哪。随便点点,好像就在 管理员界面 – 核心参数, 把 ssl_redirect 选项设为关,就ok了。

3.02的图形报表一直无法生成,服务器是bluehost,后台log看不到,调试困难,升级到了3.62,就显示出来了 :-)

关于汉化包

http://www.bugzilla.org/download/

蒋艳 (jiangyanfeng)同学只翻译到3.4.3版本,台湾的repeat 已经搞到了 3.7.2 ,只好先拿繁体中文来用,一些同事反馈说不习惯繁体字,呃,用sed 替换字符串呗,以前用phpbb mods的时候,我也干过这事。写个sh脚本,替换常用的计算机文字,以后再出新版本,跑那个脚本刷一下,80%的文字替换应该没问题吧。

报表中文乱码的解决

不知道bluehost是否安装有中文字体,我把我机器上安装的文泉驿微米黑字体拷贝到bluehost上,

要修改 template/cn/default/reports 目录下三个文件:
report-bar.png.tmpl report-line.png.tmpl report-pie.png.tmpl

在 graph.set(x_label => col_field_disp, 这一行的前面加上

graph.set_title_font("/home/xxx/www/fonts/wqy-microhei/wqy-microhei.ttc",16);  
graph.set_x_label_font("/home/xxxx/www/fonts/wqy-microhei/wqy-microhei.ttc",10);  
graph.set_y_label_font("/home/xxxx/www/fonts/wqy-microhei/wqy-microhei.ttc",10);  
graph.set_x_axis_font("/home/xxxx/www/fonts/wqy-microhei/wqy-microhei.ttc",10);  
graph.set_y_axis_font("/home/xxxx/www/fonts/wqy-microhei/wqy-microhei.ttc",10);  
graph.set_legend_font("/home/xxxx/www/fonts/wqy-microhei/wqy-microhei.ttc",10);  

提交bug页面table出现断行问题

修改 template/cn/default/bug/create/create.html.tmpl
添加相应的th标签 nowrap=”nowrap” 属性

修改皮肤
升级后,原来主界面爬动的bug不见了,测试mm终于可以不用尖叫了,呵呵:)
默认的皮肤真的很丑,导航栏的颜色看起来很土。参考这里 http://www.firefox.net.cn/forum/viewtopic.php?t=9551提供的css,参考了 Basecamp 导航栏的颜色,
修改 skins/standard/global.css 里的#titles 标签,把背景颜色改为青草色
background-color: #195D00;

看起来舒服多了,还可以为测试人员保护视力 :-)

试用在线协作工具egroupware

年初,用mediawiki搭建了公司内部文档系统,用到现在,wiki还是不利于协作,找几个groupware研究研究。G一下,有小杜学习笔记的一篇开源Groupware软件试用手记 里面推荐使用 egroupware。

安装参考 Ubuntu wiki 提供的EGroupware安装设置

打开下载页面 http://www.egroupware.org/download,怎么有个 trial for 30 days,傻眼了几分钟,网上不是说免费的么?原来免费版本在下边有 sourceforge.net字样的连接,发现长时间呆在电脑旁,人都变傻了。

按照安装提示,填好一些选项,生成header.inc.php 文件,并修改文件权限

chmod 700 header.inc.php

设置检查页面发现session无法读写,修改为 apache user即可。

sudo chown deli:deli /var/lib/php/session

装完后,发现需要个中文语言包,原来不需要特别下载,访问 setup 目录,进入设置界面,修改语言。

遇到一些问题:

1. 点 通讯录标签,页面空白,看了log:
[Mon Aug 30 16:21:05 2010] [notice] child pid 3045 exit signal Segmentation fault (11)
有时间再debug它。还在玩玩中,觉得ok才在公司推广使用。
2. css样式表文中字体,一般字体设定到12px以上才能够看清楚。11px的话,ie会自动调整,但ff不会。

下午试用了一下 大名鼎鼎的basecamp,发现商业的比较好用 :-) 恨不能自己亲自动手写一个,呵呵。一个买3k,卖出10k套,噢~~ 不好意思,哪有这么好的事,刚才做了个白日梦。

Pages: Prev 1 2