欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

[转载]szmd安装方法

程序员文章站 2022-05-26 13:23:07
...
发信人: tian.bbs@bbs.tju.edu.cn.no.spam (第五年·深造中), 信区: BBSDev
标  题: ytht szmd 安装笔记
发信站: 天大求实BBS站 (Sun Jan  8 21:12:07 2006)
转信站: CUMT!bbsnews.sdu.edu.cn!news2.happynet.org!TJUBBS

2006年1月5号我考完大学里最后一门课,开始捉摸缩图的问题,用了1天时间弄出来了。:)
贴出来与大家分享,特别感谢Fishingsnow,ylsdd,BunnyQ的帮助。

必要性:
1 减小全站的流量,这是当初ytht的主要目的。tjubbs对比lqqm,流量竟然相差不大。
2 减小对客户端浏览器的冲击,对于像我这样的破烂机器,打开一个有10M图片的主题,
   机器要停顿几十秒。
3 对于大多数图片来说,没必要一下子展示那么大,那么清晰,必要的时候再展开。

分析步骤:

1.分析yjrg,lqqm的缩图现象,可以判断是比较图片大小,超过后就会缩图
2.分析bbscon.c 通过加S=1的参数来显示缩小后的图片,
   在代码目录下 grep szm_box_jpg tjpg_ctx SZM 等关键字,找到相关文件。
3.通过http://ytht.net/cgi-bin/trac.cgi浏览nju09/bbscon.c 版本历史
4.找到szm/目录,察看所有文件的变化过程,由于svn的特性可以看到关联的文件更改
5.通过svn下载最新的ytht代码,把szm目录放在测试机对应目录下,根据svn修改
   ythtlib/szm.c szm.h Makefile ythtlib.h
   nju09/bbslib.h bbsmain.c
6.在szm/下make all,根据出错信息来安装软件,主要是GD,libpng,libjpeg。
   要求: GD > 2.0 依赖 gdImageCreateTrueColor function
         如果安装有1.8.4等低版本应该卸载或者删除,否则安装还会出错。
7.make all正常后会生成szmd,拷贝到BBSHOME/bin
8.用root创建/tmp/szm/dev,将/dev/null链接到/tmp/szm/dev/null
   用root运行szmd
9.客户端(BBS主服务器)touch BBSHOME/TJPG_SERVER,加入图片压缩服务器的IP
   之后即可启用服务器端的图片压缩.
   (如果用同一台机器既做服务器又作客户端的话,写127.0.0.1就行了)
10.后面主要功夫花在修改bbscon.c上,由于tjubbs的这部分修改很多,不能直接copy。
   比较保险的做法是修改一部分,make一下看看,如果错误不是太离谱,就接着修改。
   http://bbs.tju.cn/bbsdev/tjubbs/nju09/bbscon.c?r1=1.27&r2=1.28
   http://bbs.tju.cn/bbsdev/tjubbs/nju09/bbscon.c?r1=1.28&r2=1.29
11.还可以增加szmcache,这样对于同一个图片就避免了反复调用压缩。
   增加szmcache,主要参考一下修改bbscon.c,tjubbs近期也会添加szmcache。
   http://ytht.net/cgi-bin/trac.cgi/changeset/7033
   http://ytht.net/cgi-bin/trac.cgi/changeset/6838
相关标签: bbs tju