编译安装 Varnish Cache 2.1.3 通过 

前端时间,squid 爆了漏洞,心里感觉还是不能情绪稳定.最近又看到了varnish 这款http 缓存服务器的崛起,觉得很是棒.

再者说,squid 本不是专业反向代理服务器(服务端缓存),而是正向代理服务器(客户端缓存).而varnish cache 则是专业做反向代理的。这是其一.

再者,squid 的体积越来越大,这是我不敢想的。源码压缩包 3M多,解压后竟达10多M...

再看varnish 则小巧了许多.不要1M.解压后才3M多.而且在内存占用方面,varnish 更是让我这台512M 的vps 轻松的多。

最后一点,varnish 的效率据说高于squid.有这么多的理由,我便干掉了squid,投奔varnish了.

下载最新版本 2.1.3 的源码包,解压,进入目录
我的configure:
[root@PowerPC varnish-2.1.3]# ./configure \
> --prefix=/usr/local/varnish \
> --exec-prefix=/usr/local \
> --sysconfdir=/etc/sysconfig/varnish \
> --localstatedir=/var \
> --enable-shared=yes \
> --enable-static=no \
> --disable-largefile

检查依赖,一切OK.接下来 make && make install.
编译时间很快,比起squid 真是快了几倍。呵呵

编辑自动生成的default.vcl 配置文件,这里要说一下,不同于一下配置文件的格式,varnish 使用的是一个叫VCL (Varnish Confingure Language)的语言作为配置文件。囧rz 其实就是一些很简单的条件判断语句什么 if else 之类的.
更不会有switch 之类的,只要你写过一点程序,这些都不是难题.

为了让用户更好的编辑VCL文件,varnish 还提供了用于VIM 的语法高亮文件.
地址:http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/~checkout~/packages/vim-syntax-vcl/vcl.vim

下载放到指定目录即可.

接下开始编辑配置文件,按照官方的wiki提示,
新建几台后置服务器,分别运行于不同端口.

比如我的vps 有cherokee、nginx、lighttpd、tomcat 等.

backend to_cherokee {
.host = "127.0.0.1";
.port = "81";
}

backend to_lighttpd {
.host = "127.0.0.1";
.port = "82";
}

backend to_nginx {
.host = "127.0.0.1";
.port = "83";
}

backend to_tomcat {
.host = "127.0.0.1";
.port = "84";
}


再根据不同的域名转发到对应的后置服务器,

if (req.http.host ~ "^(\w*.)?xiazhengxin.cn$") {
set req.backend = to_cherokee;
}

if (req.http.host ~ "^(\w*.)?xiazhengxin.tk$") {
set req.backend = to_nginx;
}

if (req.http.host ~ "^(\w*.)?xiazhengxin.org.cn$") {
set req.backend = to_lighttpd;
}

if (req.http.host ~ "^(\w*.)?xxx.xxx$") {
set req.backend = to_tomcat;
}


上段代码须放入sub vcl_recv {} 块中.

当然还可以自定义错误.编辑 sub vcl_error {} 块即可.

更多配置详见:http://www.varnish-cache.org/trac/wiki/VCL

这里还有一些例子可供参考:
http://www.varnish-cache.org/trac/wiki/VCLExamples

一切配置完成后,运行 varnishd 启动服务器.
报错:
varnishstat: error while loading shared libraries: libvarnish.so.1: cannot open shared object file: No such file or directory


运行ldconfig 即可.

再次运行
[root@PowerPC varnish]# varnishd -a :80 -f default.vcl -u http
启动成功.
[ ] ( 2680 次浏览 ) 永久链接 ( 3 / 2577 )
编译安装 eAccelerator revision 427 for php 通过 

想到自己自从编译安装了php 5.3.3 以来还没有为它安装个缓存器,于是今天便动手了.

先从svn 里面签出最新版本 svn --username anonymous --password anonymous co http://dev.eaccelerator.net/eaccelerator/trunk eaccelerator

svn: Repository moved temporarily to 'https://svn.eaccelerator.neteaccelerator/trunk'; please relocate

提示地址更换,囧rz 怎么官网地址没更新呢

更换地址再次签出,svn --username anonymous --password anonymous co https://svn.eaccelerator.net/eaccelerator/trunk eaccelerator
成功.

进入目录,phpize 生成 configure 文件.
我的configure:
[root@PowerPC eaccelerator]# ./configure \
> --prefix=/usr/local/php/eaccelerator \
> --exec-prefix=/usr/local \
> --sysconfdir=/etc/sysconfig \
> --localstatedir=/var \
> --enable-eaccelerator \
> --enable-static=no

检查依赖,没有问题.make && make install 编译安装.

接下来让php 载入 eaccelerator.so 模块.
编辑/etc/php.ini

插入一下内容:
zend_extension="/usr/local/lib/php/extensions/no-debug-non-zts-20090626/eaccelerator.so"
eaccelerator.shm_size="16"
eaccelerator.cache_dir="/tmp/eaccelerator"
eaccelerator.enable="1"
eaccelerator.optimizer="1"
eaccelerator.check_mtime="1"
eaccelerator.debug="0"
eaccelerator.filter=""
eaccelerator.shm_max="0"
eaccelerator.shm_ttl="0"
eaccelerator.shm_prune_period="0"
eaccelerator.shm_only="0"
eaccelerator.compress="1"
eaccelerator.compress_level="9"

注:更多设置,参见 http://www.eaccelerator.net/wiki/Settings

保存,killall php-fpm 杀掉所有php-fpm 进程.
再次启动php-fpm 即可.
注:/tmp/eaccelerator 目录我已经有了。且确保可写入.

查看版本信息:
[root@PowerPC ~]# php-fpm -v
PHP 5.3.3 (fpm-fcgi) (built: Jul 31 2010 11:36:42)
Copyright (c) 1997-2009 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies
with eAccelerator v1.0-dev, Copyright (c) 2004-2010 eAccelerator, by eAccelerator

一切正常,安装完成.
[ ] ( 4296 次浏览 ) 永久链接 ( 3 / 2621 )
编译安装 Wine 1.3.1 通过 

昨天吧,wine 开发组发布了 wine 1.3.x 的开发版.而我还在使用之前编译的1.1.44.
而官方源里面也早已是稳定版 1.2 了.

所以我便打算,升级一下我的wine.

下载源码包,解压,进入目录

我的configure:
sharl@sharl-laptop:~/下载/wine-1.3.1$ ./configure \
> --prefix=/usr/local/wine \
> --exec-prefix=/usr/local \
> --sysconfdir=/etc/sysconfig \
> --localstatedir=/var \
> --disable-win16 \
> --disable-tests \
> --disable-largefile \
> --with-x

检查依赖,wine 基本没有什么必须的外部依赖.它所需的大部分依赖也全都自带了.这也是为什么wine 的源码包体积如此之大的原因.

检查完依赖后,运行 make 进行编译。这个时间会非常的长.我机器3G内存也用了大概十几分钟.好在我已经习惯了.

编译完成后,make install 安装至指定目录.

最后运行 winecfg 设置一下(比如安装Gecko、生成driver_c 路径等)即可.
[ ] ( 2567 次浏览 ) 永久链接 ( 3 / 2499 )
编译安装 Audacious 2.4 rc2 通过 

最近看到audacious 官方放出了2.4 分支的第二个候选版本,将是2.x 的第一个稳定分支,而且从2.4 开始默认使用 GTKUI 作为默认界面.这个我很是喜欢.应为很像windows 下的foobar2k,那样的清爽的界面很棒,于是迫不及待的升级。

apt-get purge audacious .卸载掉了我之前安装源里面的2.3 版本.下载源码开始自己编译安装.

下载首页提供的地址,下载 audacious-x.xx.tgz、audacious-plugins-x.xx.tgz 主程序和插件包.解压,进入目录

先编译主程序

我的configure:
sharl@sharl-laptop:~/下载/audacious-2.4-rc2$ ./configure \
> --prefix=/usr/local/audacious \
> --exec-prefix=/usr/local \
> --sysconfdir=/etc/sysconfig \
> --localstatedir=/var \
> --disable-altivec \
> --disable-user-plugin-dir \
> --with-buildstamp=Sharl_MUSIC \
> --with-included-gettext \
> --with-regexlib=gnu

检查依赖,报错,缺少 libmowgli、libmcs 两个库.

执行
sudo apt-get install libmowgli-dev
sudo apt-get install libmcs-dev

问题依旧.libmowgli 还是不满足.要求版本高于 0.7.0. 可是ubuntu源里只有0.6.x.

下载源码自己编译安装,libmowgli项目是audacious 在维护的,主页 http://www.atheme.org/project/mowgli

下载源码包:http://mirror.billymays.us/libmowgli/libmowgli-0.7.1.tgz

解压进入目录:
直接 ./configure && make && make install 即可.

完了后,回到audacious 主程序目录,再次检查依赖,通过.

开始编译.如果 make 出错,错误信息如下的话

gcc: /intl/libintl.a: 没有那个文件或目录
Failed to link audacious2!
make[5]: *** [audacious2] 错误 1
make[4]: *** [all] 错误 1
make[3]: *** [subdirs] 错误 1
make[2]: *** [all] 错误 1
make[1]: *** [subdirs] 错误 1
make: *** [all] 错误 1


看看configure 参数里面是不是有 "--with-included-gettext",删掉即可.audacious 只带了libintl.a.

注:configure string 中最好加上 “--enable-chardet” 以启用字符编码自动识别.不然会乱码.

make 完成后。make install 安装到指定目录.主程序安装成功.

接下来编译插件.进入插件目录

我的configure:
sharl@sharl-laptop:~/下载/audacious-plugins-2.4-rc2$ ./configure \
> --prefix=/usr/local/audacious/plugins \
> --exec-prefix=/usr/local \
> --sysconfdir=/etc/sysconfig \
> --localstatedir=/var \
> --enable-chardet \
> --disable-altivec \
> --disable-mms \
> --disable-bluetooth

检查依赖,报错:
configure: WARNING: *** Cannot find libFLAC, FLACng will not be built ***
configure: WARNING: *** Cannot find WavPack 4.31+, WavPack support will not be built ***
configure: WARNING: Could not find libsamplerate, necessary for jack output plugin.

运行
sudo apt-get install libflac++-dev
sudo apt-get install libsamplerate-dev
sudo apt-get install libwavpack-dev

再次检查,通过.

然后 make && make install. 时间可能会比较长.一切完成后.
audacious 安装成功了.

运行 audcious,出现了主界面,果然,GTKUI 成为了默认界面.
附图一张:

[ ] ( 2228 次浏览 ) 永久链接 ( 3 / 2434 )
编译安装 Pidgin 2.7.3 通过 

今天看到pidgin 官网放出了“Pidgin 2.7.3 is out and contains some important crash fixes” 字样,打算改用新的版本.

在ubuntu packages 里面查了下,pidgin 还是2.6.6 版本,pidgin 官方推荐的PPA(https://launchpad.net/~pidgin-developers/+archive/ppa/+files/pidgin-ppa_0.0.3_all.deb)目前也还只是2.7.1 版本,

故而只好自己动手了,下载最新源码包,解压,进入目录

我的configure:
sharl@sharl-laptop:~/下载/pidgin-2.7.3$ ./configure \
> --prefix=/usr/local/pidgin \
> --exec-prefix=/usr/local \
> --sysconfdir=/etc/sysconfig \
> --localstatedir=/var \
> --enable-static=no \
> --enable-shared=no \
> --disable-largefile \
> --disable-consoleui \
> --disable-screensaver \
> --disable-startup-notification \
> --disable-gstreamer \
> --disable-gstreamer-interfaces \
> --disable-farsight \
> --disable-vv \
> --disable-fortify \
> --enable-gnutls=no \
> --enable-nss=no \
> --enable-trayicon-compat \
> --disable-doxygen \
> --disable-dot \
> --disable-devhelp \
> --with-extraversion=SHARL_LINUX_IM \
> --with-x \
> --with-static-prpls=all \
> --with-python

检查依赖,一切顺利(因为本台机器已经不是第一次编译pidgin了).
紧接着 make && make install 编译 和 安装.

当然之前最好先删除之前老版本的pidgin(如果安装目录一样的话),不然configure 的时候就会有警告了.

编译时间可能会很长,等下即可安装完成.

运行 pidgin 即可,进行添加QQ帐号(如果用户配置文件 ~/.purple 被删的话),添加完成后即可进行聊天了.

切换到“可用”,提示:
您的号码可能存在异常情况,已受到限制登录保护,需激活后才能正常登录。激活网址: http://jihuo.qq.com


看来又要激活了,腾讯什么时候才能完美支持pidgin 呢?? 嚓~

[ ] ( 8481 次浏览 ) 永久链接 ( 3 / 2552 )

<< <上一页 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 下一页> >>