BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / bbs-man-dev / #13260同步于 1 周前
BBSMan_Dev机器人发帖

cygwin1.79+apache2+php5+mysql5下kbs+blog安装手记

liufucan.
1 周前镜像同步0 回复
转信站: BYR!news.byr.edu.cn!news.shec6.edu.cn!news.newsmth.net!NEWSMTH cygwin1.79+apache2+php5+mysql5下kbs+blog安装手记 1、创建bbs管理员账户,并以bbs账户登陆。下载cygwin并安装http://cygwin.com/setup.exe 2、cygwin除了默认安装外把下面这些也装上 make gcc-core gcc-g++ wget cvs2svn patch readline cygrunsrv byacc bison autoconf-2.13 automake-1.6 libtool openssl openssl- devel gmp libgmp-devel libxml2 libxml2-devel libiconv zlib zlib-devel gd libgd-devel libfreetype-devel jpeg libjpeg-devel libpng14 libpng14-devel vim cron libmcrypt libmcrypt-devel popt apache2 apache2-devel apr1 libapr1 libapr1-devel aprutil1 libaprutil1 libaprutil1-devel libuuid-devel libdb-4.2(一定要4.2) 安装后设置 set CYGWIN=server cygserver-config net start cygserver export OUTPUT_CHARSET="GBK" export LANG="zh_CN.GBK" cygrunsrv -I apache2 -d "CYGWIN apache2" -p /usr/sbin/httpd2 -a "-DNO_DETACH" -e "CYGWIN=server" -o apache2启动net start apache2 apache2关闭net stop apache2 3、安装libesmtp cd /home wget http://dev.kcn.cn/libesmtp-cygwin.tar.gz tar zxPf libesmtp-cygwin.tar.gz 4、下载kbs源代码 cd /home svn co http://svn.kcn.cn/repos/kbs/trunk kbs mv kbs/kbs_bbs kbsbbs 5、编译安装mysql cd /home wget http://mirrors.sohu.com/mysql/MySQL-5.1/mysql-essential-5.1.59-win32.msi wget http://mirrors.sohu.com/mysql/MySQL-5.1/mysql-5.1.59.tar.gz tar zxvf mysql-5.1.59.tar.gz cd mysql-5.1.59 ./configure --without-server --without-readline CFLAGS=-O2 CXXFLAGS=-O2&& make && make install 然后进入home目录安装mysql-essential-5.1.59-win32.msi并设置 cp support-files/my-medium.cnf /etc/my.cnf vi /etc/my.cnf 在 [client] 中加入 protocol=TCP mysql启动net start mysql 登陆测试mysql -uroot -p mysql关闭net stop mysql 6、初次编译安装php cd /home wget http://mirrors.sohu.com/php/php-5.2.17.tar.gz tar zxvf php-5.2.17.tar.gz cd php-5.2.17 ./configure --prefix=/home/bbs/php --with-apxs2=/usr/sbin/apxs2 --without-iconv 先编辑makefile文件(非常重要): 1)、EXTRA_LIBS值增加:-lhttpd2core -lapr-1 -laprutil-1 2)、将libs/libphp$(PHP_MAJOR_VERSION).bundle下面的$(CC)后面加上-shared 还有将 $(PHP_GLOBAL_OBJS:.lo=.o) $(PHP_SAPI_OBJS:.lo=.o) 替换成`echo $(PHP_GLOBAL_OBJS) $(PHP_SAPI_OBJS) | sed "s/\([^/ ]*\)\.lo/.libs\/\1.o/g"` make make libs/libphp5.bundle cp libs/libphp5.so /usr/lib/apache2/cygphp5.so make install 7、安装kbs id bbs查看uid和gid vi /home/kbsbbs/site/fb2k-v2.h修改bbsuid和bbsgid并加入以下三行: #define RECORDMAXONLINE #define PERSONAL_CORP #define NFORUM 1 cd /home/kbsbbs ./autogen.sh cd sshbbsd ./autogen.sh cd .. ./configure --enable-site=fb2k-v2 --with-php=/home/bbs/php --with-mysql=/usr/local \ --enable-ssh --enable-ssl --with-openssl--enable-innbbsd --with-libesmtp=/usr/local \ && make && make install make install-home选y 8、再次编译安装php 先去掉/home/kbsbbs/src/bbs.h中的#include "mpatrol.h" cd /home/php-5.2.17 mkdir ext/kbs_bbs cp /home/kbsbbs/php/config.m4 ext/kbs_bbs cp /home/kbsbbs/php/php_kbs_bbs.h ext/kbs_bbs cp /home/kbsbbs/php/*.c ext/kbs_bbs 装完这些发现autoconf版本是2.5估计被其他包依赖了,需要降到2.13否则接下来./buildconf --force会不成功,我是这样解决的: mv /bin/autoconf /bin/autoconf11 mv /bin/autoconf-2.13 /bin/autoconf mv /bin/autoheader /bin/autoheader11 mv /bin/autoheader-2.13 /bin/autoheader ./buildconf --force ./configure --prefix=/home/bbs/php --with-mysql=/usr/local --disable-debug --with-pic \ --disable-rpath --enable-inline-optimization \ --with-pdo-mysql=/usr/local --enable-xml --with-gd \ --with-freetype-dir=/usr --with-png-dir --without-iconv \ --with-jpeg-dir --with-zlib --enable-fastcgi \ --with-config-file-path=/home/bbs/php/etc \ --with-config-file-scan-dir=/home/bbs/php/etc/php.d \ --with-mcrypt --with-mbstring --enable-mbstring=all \ --with-layout=GNU --enable-kbs_bbs 先编辑makefile文件(非常重要): 1)、EXTRA_LIBS值增加:-lhttpd2core -lapr-1 -laprutil-1 还有在-lsystem 之后加上 -L/usr/local/lib -lesmtp 2)、将libs/libphp$(PHP_MAJOR_VERSION).bundle下面的$(CC)后面加上-shared 还有将 $(PHP_GLOBAL_OBJS:.lo=.o) $(PHP_SAPI_OBJS:.lo=.o) 替换成`echo $(PHP_GLOBAL_OBJS) $(PHP_SAPI_OBJS) | sed "s/\([^/ ]*\)\.lo/.libs\/\1.o/g"` make make libs/libphp5.bundle cp libs/libphp5.so /usr/lib/apache2/cygphp5.so make install 9、php相关设置 cp /home/php-5.2.17/php.ini-dist /home/bbs/php/etc/php.ini vi /home/bbs/php/etc/php.ini date.timezone=PRC同时取消这一行代码的注释,即去掉前面的分号就可以了 10、apache相关设置 vi /etc/apache2/httpd.conf <Directory /> Options FollowSymLinks AllowOverride None Order deny,allow Allow from all </Directory> index.html后面增加index.php DocumentRoot改成 "/home/bbs/www"同时确定有下面这一行 LoadModule php5_module lib/apache2/cygphp5.so vi /etc/apache2/mime.types增加两行 application/x-httpd-php php application/x-httpd-php-source phps mv /home/kbs/www2 /home/bbs/www vi /home/bbs/www/www2-funcs.php增加一行 date_default_timezone_set("PRC"); 11、初始化并启动kbs /home/bbs/bin/bootstrap cd /home/bbs/bin ./miscd daemon ./bbslogd ./bbsd -p 23 /usr/sbin/httpd2 12、配置并启动crontab crontab /home/kbsbbs/contrib/crontab.SMTH crontab -l /usr/sbin/cron vi /home/bbs/xml/rcmdbrd.xml内容如下 <?xml version="1.0" encoding="GBK"?> <RecommendBoards> <Board><EnglishName>newcomers</EnglishName></Board> <Board><EnglishName>...</EnglishName></Board> ... <Board><EnglishName>...</EnglishName></Board> </RecommendBoards> 13、关闭kbs(关机前记得关闭kbs否则用户会丢失) cp /home/kbsbbs/contrib/killall /home/bbs/bin/killall cd /home/bbs/bin ./killall miscd ./killall daemon ./killall bbslogd ./killall bbsd ./killall httpd2 ./killall cron /home/kbsbbs/contrib/scripts/clearipc 14、phpmyadmin设置 cd /home wget http://nchc.dl.sourceforge.net/project/phpmyadmin/phpMyAdmin/3.4.9-rc1/phpMyAdmin-3.4.9-rc1-all-languages.tar.gz tar zxvf phpMyAdmin-3.4.9-rc1-all-languages.tar.gz mv phpMyAdmin-3.4.9-rc1-all-languages /home/bbs/www/phpmyadmin cd /home/bbs/www/phpmyadmin mv config.sample.inc.php config.inc.php vi config.inc.php具体设置不再叙述。 15、blog配置 vi /home/bbs/etc/sysconf.ini加入这几行 MYSQLBLOGHOST = "localhost" //MySQL服务器地址 MYSQLBLOGUSER = "root" //MySQL用户名 MYSQLBLOGPASSWORD = "123456" //MySQL用户密码 MYSQLBLOGDATABASE = "blog" //MySQL数据库名 MYSQLBLOGPORT = "3306" //MySQL数据库端口,默认为3306 vi /home/bbs/etc/menu.ini加入这两行 @PcorpManage 0,0, PERM_SYSOP, "BlogManage", "T) Blog管理" @Pcorp 0,0, PERM_BASIC, "JPc", "J) Blog" 登陆telnet按~更新。 16、测试 vi /home/bbs/www/test.php内容如下 <?php phpinfo(); ?> 17、存在的问题 kbs在cygwin下貌似不能支持mysql,因为telnet下创建个人文集出现系统错误,web下blog出现无法连接到服务器。 xml下board.xml不能生成,似乎跟mysql的支持也有关系。 停留时间不正常,需要多几次./miscd daemon
订阅后,新回复会通过你的通知中心匿名送达。
0 条回复
暂无回复 · 你可以订阅本帖等待新回复。