Monthly Archives: September 2010

Discuz 在 nginx+fastcgi 环境下相对路径问题的解决

这几天在陆续用 apache 替换成 nginx,发现所有在用的 discuz 都出现了 php 脚本中相对路径的问题。比如 discuz 动态头像调用是类似于: http://www.xxx.com/ucenter/avatar.php?uid=21480&size=middle 但是调用后的地址就变成了: http://www.xxx.com/ucenter/avatar.php/ucenter/data/images/000/05/60/39_avatar_middle.jpg 查看源代码发现,discuz 中的相对路径都是直接写的文件名,前面没有 ./,与此同时还带来了批量上传 flash 文件无法调用 misc.php 导致提示文字无法显示,引用及提醒信息跳转地址错误等,一概都是由于指向了错误的 xxx.php/dir 这样的 url。感觉不应该是 nginx 的问题,于是查看 php.ini 相关设置,发现 cgi.fix_pathinfo 这个选项正是解决问题的关键,将这个值设置为 0 的话,PATH_TRANSLATED 将等同于 SCRIPT_FILENAME,之后重启 php-fpm 后 discuz 的这个问题就解决了。看来还是 discuz 7.2 代码兼容性的问题,不知道更新的 … Continue reading

Posted in 我的慵懒生活 | Tagged , , | 3 Comments

把 Terminal 拆成多个窗口的 tmux

今天 @delphij 介绍了一个 terminal 神器 - tmux,可以打开10个窗口而且每个窗口都可以随便切分,实在是赞到飞起,从此不用再一下开好几个 ssh 连接了。 在 tmux 主页下载源代码,FreeBSD / Linux 编译安装都很方便,Linux 下面可能会提示找不到 event.h 以及 curses.h 等,分别安装 libevent-dev 和 ncurses-dev 就行了。 启动后默认按 ctrl+b 进入命令输入,? 可以查看命令,支持自定义快捷键。退出用 d 命令,以后用 tmux attach 启动即可直接恢复上次的 session,很好很强大。

Posted in 电脑相关 | Tagged , | 5 Comments

mysql 升级后的连锁反应

上次由于 mysql replication 的问题把一台原先跑 mysql 5.0 的服务器升级到了  mysql 5.1,升级后果然 replication 再没出现过问题。但是今天突然发现 postfix 无法启动,检查日志发现很多类似提示: postfix/smtpd[1485]: fatal: no SASL authentication mechanisms 检查一下,发现 dovecot 没有起来,手工启动也失败,继续检查日志,发现 dovecot: auth(default): /libexec/ld-elf.so.1: Shared object "libmysqlclient.so.15" not found, required by "dovecot-auth" 到 /usr/local/mysql/lib 一看傻眼了,mysql 5.1 的 client 库也变了,是 … Continue reading

Posted in 我的慵懒生活, 电脑相关 | Tagged , , | 1 Comment

尝试把谷奥的 http server 换成了 nginx

周末没有太多事情,于是尝试把谷奥的 http server 换成了 nginx,一开始 rewrite 怎么也不生效,后来 pkg_delete 后重新安装就好了,中间也没改 config,真是怪了。。。目前看来问题不大,还需继续观察。 顺便做了个性能测试,webbench -c 100 -t 30 phpinfo(),nginx 使用了 kqueue 参数。 apache 2 的结果: Benchmarking: GET phpinfo.php100 clients, running 30 s Speed=1398 pages/min, 1272384 bytes/sec.Requests: 699 susceed, 0 failed. Nginx 的结果: Benchmarking: … Continue reading

Posted in 我的慵懒生活, 电脑相关 | Tagged , , , | 3 Comments

使用 OpenVPN 将 HE Tunnel Broker 的 IPv6 搬回家

之前我们已经给 VPS 配置好了 HE Tunnel Broker 提供的 IPv6 地址,但是这 2^80 个 IPv6 地址都放在服务器上有些太浪费了,为何不弄到家里电脑来,让家里电脑也可以使用 IPv6 呢?等着国内运营商提供 IPv6 恐怕得猴年马月了吧? Google 了一下,使用 OpenVPN Tunnel 可以轻松完成这个工作,有两种方法:第一种是用 tap 模式建立网桥,服务器端运行 radvd 给客户端分配 IPv6 地址并作路由。第二种使用 sit 设备,不需要配置服务,但是需要客户端做相应的绑定。我选择第二种,主要是想将 OpenVPN 维持在 tun 模式。 基本思路是根据给客户端分配的内部 IPv4 地址的最后一位(X)在服务器端(在 Debian / Ubuntu … Continue reading

Posted in 我的工作学习, 电脑相关 | Tagged , , , | 4 Comments

使用 he.net 的 Tunnel Broker 为 vps 设置 IPv6 连接

并不是所有 VPS 供应商都会给你配备 IPv6 地址,包括备受赞誉的 Linode 也是一样,这时候我们可以使用 he.net 提供的 Tunnel Broker 服务。进入 http://tunnelbroker.net/ 注册一个用户名,并且输入 vps 的 ip ,选择一个距离 vps 最近的接入节点,创建一个 Regular Tunnel,之后打开 Tunnel Detail 就可以看到给你分配的 IPv6 地址,以及 IPv6 网关和 IPv4 节点地址了。之后进行 vps 段设置,编辑 /etc/network/interfaces,加入如下内容: auto hetunnel        iface hetunnel inet6 … Continue reading

Posted in 电脑相关 | Tagged , , , | 9 Comments

mysqlbinlog Error in Log_event 原因及其解决

话说昨天配置好了 mysql 的 replication,今天到 slave 上 show slave status 却发现出错了,错误日志里面这么说的: 100921 21:49:10 [ERROR] Error in Log_event::read_log_event(): 'Found invalid event in binary log', data_len: 80, event_type: 19100921 21:49:10 [ERROR] Error reading relay log event: slave SQL thread aborted because of I/O … Continue reading

Posted in 我的慵懒生活, 电脑相关 | Tagged , | 2 Comments

配置 master-slave replication mysql 服务器笔记

对于服务器来说,数据丢失是最要命的事情了,系统崩溃,硬盘物理损坏都可能造成无法挽回的损失。谷奥数据库的备份也一直是我心头之病,最近有空架设了一台 slave 服务器并且在 slave 服务器上用 crontab 保留 snapshot,数据安全性应该有了比较大的改善了。简单配置过程如下,环境为 mysql 5.0 / 5.1 + FreeBSD 8.1 master 服务器,首先修改 my.cnf: sudo vi /var/db/mysql/my.cnf 修改或加入如下行,binlog-ignore-db 可以根据自己实际情况修改 log-bin=mysql-bin server-id       = 1 binlog-ignore-db=mysql,information_schema 重新启动 mysql-server sudo /usr/local/etc/rc.d/mysql-server restart 进入 mysql console,加 slave 用户: mysql> GRANT … Continue reading

Posted in 电脑相关 | Tagged , , | 2 Comments

带儿子在美国看急诊

  这个帖子滞后了好久,一个原因是因为后续的事情真的拖了好久,而更重要的原因是我实在是太懒了。。。5月份带着老婆儿子外加儿子的奶奶姥姥一起去美国玩了一个月,玩的自然是很爽,途中豆干儿一直乖的很,不过他在拉斯维加斯有生以来第一次发烧可是吓了我们一跳。 2010年5月5号,按照日程安排,我们一早从 Mountain View 开车出发直奔内华达州沙漠深处的赌城拉斯维加斯,这是我们计划中开车路程最多的一天,事实证明刚刚6个月的豆干儿还是不太适应这么长时间坐在安全座椅内。6号凌晨两点,lisa 觉得豆干儿有点发热,于是把我叫起来去 garage 拿体温计(MGM Grand 的 garage 距离客房楼不是一般的远,所以我们好多东西放车里没拿过来)。测量的结果果然有些发烧,这是豆干儿出生后第一次生病,又是在异国他乡,我们一时都有些慌。好在带的东西还比较齐全,lisa 从药箱里面拿出婴儿热贴给豆干儿贴上,同时我到大堂向还在值班前台人员咨询最近的医院。前台人员听说孩子发烧后也非常着急,拿出一份地图非常详细的告诉了我 Desert Springs Hospital 的位置,连怎么走,哪条路是单行都说的非常清楚。谢过后回到房间,lisa 说豆干儿烧有些退,网上说小孩儿小时候发低烧比较正常,不超过38.5度就不用去医院,尽量让他自己的抵抗力战胜病菌,38度以上吃一点简单的退烧药,配合使用物理降温即可,于是我们决定等早上药房开门后去买点退烧药预备着。另外我们出门前都买了某美国保险公司的紧急医疗保险,给他们打了电话,接线员说他们可以给安排医生,但是如此如此麻烦,最后建议我们在有需要时候还是先去最近的医院看急诊,回国再报销。

Posted in 三个人的旅行, 我的慵懒生活 | Tagged , , , | 11 Comments

LaCie 也出 Time Capsule?

著名外部存储厂家 LaCie 也推出了类似 Time Capsule 的 NAS / 无线路由器 2合1 的产品,我们先来看看苹果的 Time Capsule 长什么样子: 点击继续观看 LaCie Wireless Space 照片,友情提示,请做好心理准备。。。

Posted in 数码产品, 新闻/社会/娱乐/八卦, 新鲜玩意 | Tagged , , , | 3 Comments