文本也可通过 cvs 方式获得,欢迎讨论。
水木代码安装指南
本文由 BBS 水木清华站(
http://www.smth.org)系统维护组负责维护,介绍了
smthbbs 在类 Unix 操作系统(包括 Linux、FreeBSD、Solaris 8/9 for X86/SPARC
等)上的编译和安装,主要讨论用完全定制的方式进行安装。欢迎到 BBS 水木清华
站的 BBSMan_Dev 版参与 smthbbs 的讨论。
0. ChangeLog
2004.1.1
flyriver v1.2 重写这个安装文档
2002.7.31
COMMAN 加入对 ssh 部分的说明, 修正 pop3s 的说明
2002.7.27
KCN v1.1 加入pop3s,ssh部分的说明
2002.6.29
flyriver v1.0
1. 需要的软件:
libesmtp > 0.8 必须 编译时必须加上 --disable-pthreads 选项
autoconf-2.57 可选 如果从 cvs 下载源代码编译安装则必需
automake-1.6.X 可选 如果从 cvs 下载源代码编译安装则必需
libtool-1.4.3 可选 如果从 cvs 下载源代码编译安装则必需
apache_1.3.X 可选 选择 web 界面支持才需要
or apache2
php > 4.2.0 可选 选择 web 界面支持才需要
libxml2 可选 选择 web 界面支持才需要
libiconv 可选 选择 web 界面支持才需要
zlib 可选 选择 web 界面支持才需要
openssl 可选 选择 pop3d 支持 pop3s 才需要
gmp-4.1.2 可选 选择 ssh 方式支持才需要
mysql 可选 选择个人文集等功能支持才需要
2. 安装
本节介绍 smthbbs 的 telnet/ssh/web 方式在类 Unix 操作系统上的安装。注意
本文后面给出的一部分命令需要 root 权限。
2.1 一些约定
$(BBSHOME) 表示 bbs 的安装目录,缺省为 /home/bbs,在本文中指定为
/usr/local/bbs
$(WWWHOME) 表示 apache 的安装目录,在本文中指定为 /usr/local/www
$(PHPHOME) 表示 php 的安装目录,在本文中按缺省的 /usr/local
$(SRCDIR) 表示存放 smthbbs、apache 和 php 源代码的目录,可自己设
定一个,例如放在自己 home 目录的某个子目录下
2.2 安装 libesmtp 和 gmp
libesmtp 建议从源代码编译安装,configure 的时候要加上 --disable-pthreads
参数,然后运行 make 和 make install 命令。
gmp 可以直接使用操作系统自带的软件包。
2.3 下载 smthbbs、apache 和 php 的代码包
下载 smthbbs 的源代码有两种方法,一种是通过 cvs 方式获取,另一种是下载每
日更新的 smthbbs-snapshot 代码包。用 cvs 方式下载源代码请参考 doc/README.cvs
文件。把 smthbbs、apache 和 php 的代码包放在 $(SRCDIR) 目录,然后分别解开。
注意在 site/ 子目录里面有名字为 devel.c 和 devel.h 的文件,这两个文件是站
点定制文件,本文以这两个文件为例子进行讲解。注意验证 devel.h 文件中 BBSUID 和
BBSGID 与本地系统的 bbs 用户的 uid gid 是否一致,如果不一致请调整到一致。
2.4 安装 apache 和 php
首先切换目录到 $(SRCDIR),进入 apache 的源代码目录。为了节省篇幅,下面
直接以命令表示。
cd apache_1.3.X
./configure --prefix=/usr/local/www --enable-module=so
make
make install
cd ../php-4.3.X
./configure --with-apxs=/usr/local/www/bin/apxs
make
make install
2.5 安装 smthbbs
同样切换到 $(SRCDIR) 目录,进入 smthbbs 的源代码目录。
然后执行下面的一系列命令:
./configure --prefix=/usr/local/bbs --enable-site=devel \
--with-www=/usr/local/www --with-php=/usr/local/include/php \
--with-mysql --enable-ssh --enable-ssl
make
make install
make install-home
chown -R bbs:bbs /usr/local/bbs
2.6 将 phpbbslib 放入 php
同样切换到 $(SRCDIR) 目录,进入 php 的源代码目录。
mkdir ext/smth_bbs
然后将 smthbbs 源代码目录 bbs2www/phplib/ 下的 config.m4、php_smth_bbs.h
和 phpbbslib.c 三个文件复制到 ext/smth_bbs 目录,然后执行:
./buildconf --force
2.7 再次编译安装 php
重复 2.4 节中的步骤即可,但 php 的 configure 命令应改为:
./configure --disable-debug -enable-track-vars \
--with-apxs=/usr/local/www/bin/apxs --enable-mime-magic \
--with-zlib-dir --enable-smth_bbs --with-dom --with-iconv
如果一切顺利,至此 smthbbs、apache 和 php 都已经安装完毕。
3. 运行之前的配置
本节主要说明 ssh 方式和 web 方式的配置。
3.1 ssh 方式
请参考 doc/sshbbsd-howto 文件。
3.2 web 方式
apache 的配置文件为 /usr/local/www/conf/httpd.conf,编辑该文件,加入
AddType application/x-httpd-php .php
修改 Port 参数为 80,把 User 和 Group 参数都修改为 bbs。
将 smthbbs 源代码目录 bbs2www/xml 下的文件复制到 /usr/local/www/htdocs。
php 的配置文件可以从 php 源代码目录得到,将 php.ini-dist 复制为
/usr/local/lib/php.ini,然后编辑 php.ini 文件,将 short_open_tag 的值修改为
Off 即可。
4. 运行
4.1 运行 smthbbs
cd /usr/local/bbs/bin
./miscd daemon
./bbslogd
./bbsd -p 23
./sshbbsd
然后 telnet localhost,注册 SYSOP 和 guest 两个帐号。
4.2 运行 apache
/usr/local/www/bin/apachectl start
5. 其他
pop3s的支持在 configure 的时候加上 --with-openssl[=path],生成的 newpop3d
将自动包含 pop3 和 pop3s 的支持。pop3s 支持需要一个证书,可以用 openssl 生成
并放在 $(BBSHOME)/etc/bbs.crt 和 $(BBSHOME)/etc/bbs.key。
--
FROM 61.51.122.*