- 论坛徽章:
- 0
|
今天突然听同事说起要装个论坛,说超简单,我一想我还真没装过,虽然指导如何来装,不过自己动手还真没有,正好近来无事,又忽然记起了公司测试机的ip和密码,正好用来测试一下了,下面就是我安装的主要步骤,因为是第一次安装,所以参考了Discuz!官方的用户手册和论坛里的相关帖子。因为没有仔细斟酌过是用来做什么用的论坛,所以在细节上也没考虑太多,装上能用就行啊,呵呵。
公司的测试机已经有了系统,所以也就没有再装,用的是redhat as4u3,其他用到的软件有
Discuz!_6.0.0_SC_GBK.zip
ZendOptimizer-3.3.3-linux-glibc23-i386.tar.gz
freetype-2.3.5.tar.gz
gd-2.0.35.tar.gz
httpd-2.2.6.tar.gz
jpegsrc.v6b.tar.gz
libmcrypt-2.5.8.tar.gz
libpng-1.2.25.tar.gz
libxml2-2.6.31.tar.gz
mysql-5.0.45-linux-i686.tar.gz
openssl-0.9.8g.tar.gz
php-5.2.5.tar.gz
zlib-1.2.3.tar.gz
一、安装mysql
# tar xzvf mysql-5.0.45-linux-i686.tar.gz
# mv mysql-5.0.45-linux-i686 /usr/local/mysql
# groupadd mysql
# useradd -g mysql -s /sbin/nologin mysql
# chown -R mysql:root /usr/local/mysql/
# cd /usr/local/mysql
# ./scripts/mysql_install_db --user=mysql
# cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld
# chkconfig --add mysqld
# chkconfig --level 3 5 mysqld on
# cp ./support-files/my-huge.cnf /etc/my.cnf
# mv /usr/local/mysql/data/ /var/lib/mysql
# chown -R mysql:mysql /var/lib/mysql/
# vi /etc/my.cnf
修改以下内容:
(1) 在 [mysql] 段增加一行:
default-character-set = GBK
(2) 在 [mysqld] 段增加或修改:
datadir = /var/lib/mysql
skip-innodb
default-character-set = GBK
wait-timeout = 3
max_connections = 256
max_connect_errors = 10000000
将 log-bin 注释
# bin/mysqladmin -u root password 'password_for_root'
#vi /root/.bashrc
export PATH=$PATH:/usr/local/mysql/bin #添加mysql命令路径变量
#mysqld_safe -u mysql &
mysql启动进去后创建一个数据库create database bbs;
给数据库赋权
GRANT select,insert,update,delete,create,drop on *.* to root@"%" Identified by "password";
二、编译安装Apache
#tar zxvf httpd-2.2.6.tar.gz
#cd httpd-2.2.6
#./configure --prefix=/usr/local/apache --with-included-apr --enable-so --enable-deflate=shared --enable-expires=shared --enable-rewrite=shared --enable-static-support --disable-userdir
#make && make install
#echo '/usr/local/apache/bin/apachectl start ' >> /etc/rc.local
三、安装源码编译安装所需包
(1) zlib(http://www.gzip.org/zlib/)
# tar zxvf zlib-1.2.3.tar.gz
# cd zlib-1.2.3
# ./configure
# make && make install
(2) libpng(http://www.libpng.org)
# tar zxvf libpng-1.2.25.tar.gz
# cd libpng-1.2.25
# ./configure
# make && make install
(3) jpegsrc(http://www.ijg.org/)
# tar zxvf jpegsrc.v6b.tar.gz
# cd jpeg-6b/
# ./configure –enable-shared
# make
# make test
# make install #可能出错,提示不能创建文件,建立/usr/local/man/man1/目录即可。
注意,这里configure一定要带–enable-shared参数,不然,不会生成共享库
(4) Freetype(http://www.freetype.org)
# tar zxvf freetype-2.3.5.tar.gz
# cd freetype-2.3.5
# ./configure
# make && make install
(5) GD2(http://www.libgd.org/Main_Page)
# tar xzvf gd-2.0.35.tar.gz
# cd gd-2.0.35
# ./configure --prefix=/usr/local/gd2 --with-png --with-zlib --with-freetype --with-jpeg
# make && make install
(6) Libxml2(http://xmlsoft.org/)
# tar zxvf libxml2-2.6.31.tar.gz
# cd libxml2-2.6.31
# ./configure --prefix=/usr/local/libxml2
# make && make install
(7) LibMcrypt(http://sourceforge.net/projects/mcrypt)
# tar zxvf libmcrypt-2.5.8.tar.gz
# cd libmcrypt-2.5.8
# ./configure –-prefix=/usr/local/libmcrypt
# make && make install
(8) 升级OpenSSL
# tar xzvf openssl-0.9.8g.tar.gz
# cd openssl-0.9.8g
# ./config --prefix=/usr/local/openssl
# make
# make test
# make install
注:我看到Discuz!用户手册上要升级openssl和openssh,不过具体的原因至今还不清楚,不过我只升级了openssl,后来想想好像不升级也无所谓了,有空再深入研究一下了。
四、编译安装PHP
# tar zxvf php-5.2.5.tar.gz
# cd php-5.2.5
# ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with-config-file-path=/usr/local/php/etc --with-mysql=/usr/local/mysql --with-libxml-dir=/usr/local/libxml2 --with-gd=/usr/local/gd2 --with-jpeg-dir --with-png-dir --with-bz2 --with-freetype-dir --with-iconv-dir --with-zlib-dir --with-openssl=/usr/local/openssl --with-mcrypt=/usr/local/libmcrypt --enable-soap --enable-gd-native-ttf --enable-ftp --enable-mbstring --enable-exif --disable-ipv6 --disable-cgi --disable-cli
# make
# make install
# mkdir /usr/local/php/etc
# cp php.ini-dist /usr/local/php/etc/php.ini
五、安装Zend Optimizer
# tar xzvf ZendOptimizer-3.3.3-linux-glibc21-i386.tar.gz
# ./ZendOptimizer-3.3.3-linux-glibc23-i386/install.sh
当出现:Enter the location of your php.ini file的提示时,输入:/usr/local/php/etc
安装Zend Optimizer过程的最后不要选择重启Apache。
六、整合Apache与PHP
# vi /usr/local/apache/conf/httpd.conf
找到:
AddType application/x-gzip .gz .tgz
在该行下面添加
AddType application/x-httpd-php .php
找到:
DirectoryIndex index.html
将该行改为
DirectoryIndex index.html index.htm index.php
找到:
#Include conf/extra/httpd-mpm.conf
#Include conf/extra/httpd-info.conf
#Include conf/extra/httpd-vhosts.conf
#Include conf/extra/httpd-default.conf
去掉前面的“#”号,取消注释。
注意:以上 4 个扩展配置文件中的设置请按照相关原则进行合理配置!
修改完成后保存退出。
# /usr/local/apache/bin/apachectl restart
七、查看确认L.A.M.P环境信息、提升php安全性
在网站根目录放置 phpinfo.php 脚本,检查phpinfo中的各项信息是否正确。
phpinfo.php内容如下:
phpinfo()
?>
确认php能够正常工作后,在php.ini中进行设置提升php安全性。
#vi /etc/php.ini
找到:
disable_functions=
设置为:
phpinfo,passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,\
ini_alter,ini_restore,dl,pfsockopen,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server
八、安装Discuz!软件
1) 将论坛软件包Discuz!_6.0.0_SC_GBK.zip上传到服务器上,将 Discuz! 文件包的 ./upload 目录中的全部文件和目录结构上传到apache发布目录(注意是上传 upload 目录中的文件和目录,而不是上传包含 upload 目录本身的目录和结构)。
2)设置目录属性
您在正式安装以前,需要设置相关的目录属性,以便数据文件可以被 Discuz! 正确的读写。登录服务器,将服务器上以下的目录属性设置为 777。
./templates
./templates/default
./templates/default/*.*
./attachments
./customavatar
./forumdata
./forumdata/cache
./forumdata/templates
./forumdata/threadcaches
./forumdata/logs
3) 配置数据库信息
使用编辑器打开您本地机器上的默认配置文件(config.inc.php),看到以下的内容:
$dbhost = 'localhost'; // database server
// 数据库服务器
$dbuser = 'dbuser'; // database username
// 数据库用户名
$dbpw = 'dbpw'; // database password
// 数据库密码
$dbname = 'discuz'; // database name
// 数据库名
$adminemail = 'admin@your.com'; // admin email
// 论坛系统 Email
$dbreport = 0; // send db error report? 1=yes
// 是否发送数据库错误报告? 0=否, 1=是
请依据以上的注释配置空间服务商提供的数据库服务器、用户名、密码及数据库名。如果您使用自己安装的服务器环境,我们建议您在可能的情况下,尽量不要使用 root 账号,而依据 Discuz! 及服务器上其他软件的需要,单独为每个程序分配账号和数据库,以减少安全问题发生的可能。
配置好参数设置后,请保存该文件(config.inc.php),并不要忘记将其上传到服务器上的论坛目录中,覆盖原有的默认配置文件。
4) 执行安装脚本
请在浏览器中运行 install.php,即访问 http://您的域名/install.php。
安装脚本会检查您的服务器系统环境、剩余空间、数据库环境,并具备一定的纠错功能。如果您在之前某一步骤操作有问题,通常安装脚本会发现并作以提示,请您根据提示再对安装过程进行检查。如果没有提示出问题,请您按照其中的说明,完成最后的安装。
5) 运行快速设置向导
现在进行到最后一步,如果您了解整个论坛的设置则不必运行此向导。
请在浏览器运行admincp.php,即访问 http://您的域名/论坛目录/admincp.php,进行设置,此向导将根据您论坛的类型批量设置相关参数,您可以在运行完后,再进入详细设置进行微调。
安装成功后,请通过 FTP 删除安装脚本(install.php),以避免被再次安装。
到这里我的第一次总体安装Discuz!算是完成了,剩下的工作就是按照页面的指导来设置论坛的各个方面了,基于浏览器就可以操作很直接,也就不用再记录了。
因为手边一直还有别的事情,所以有空时候就搞一点,差不多装Discuz!用了有两天时间才完成吧,不过总体感觉安装还是很简单,主要是环境的配置要合理,再加上根据实际的应用来编译apache和php,我主要是为了实验一下,所以很多参数并没有进行过优化之类的工作,希望以后有空的时候可以再深入研究一下了。
本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/32359/showart_485712.html |
|