linux下Discuzz的搭建(Apache,Php,Mysql,Ucenter,Discuzz)

Discuz论坛搭建

一. 虚拟机下的Linux:

Linux系统需要有gcc的环境。我们的Radhat5(建议用此系统)是有这个环境的,而Centos是我们自己装的在系统安装时可   能没有装这个环境。

二.Apache的安装配置:

# tar zxvf httpd-2.2.4.tar.gz

# cd httpd-2.2.4

# ./configure --prefix=/usr/local/apache --enable-modules=so --with-expat=builtin

#make

#make install

#/usr/local/apache/bin/apachectl start 

说明:

1、--prefix指定Apache的安装路径

2、 --enable-modules=so 是让Apache动态加载DSO的模块,如*.so就像windows里面的*.dll

3、/usr/local/apache/bin/apachectl start(stop)开启/关闭apache服务

如果Apache配好的话,那么在虚拟机的浏览器中输入http://localhost(http://127.0.0.1)也可以在windows中的浏览器中输入虚拟机的IP地址。会出现

三.Mysql的安装配置:

3.1添加用户和组

创建mysql组和mysql用户,该用户只需要在系统中存在,不需要登录,所以添加了 -r 选项。

1

2

groupadd mysql

useradd -r -g mysql mysql

3.2解压到指定目录

1

2

3

tar -zxf mysql-5.1.53-linux-i686-glibc23.tar.gz -C /usr/local/

mv /usr/local/mysql-5.1.53-linux-i686-glibc23 /usr/local/mysql

cd /usr/local/mysql/

3.3屏蔽旧配置文件 (如果有)

1

mv /etc/mysql/my.cnf /etc/mysql/my.cnf.bak

 3.4更改权限

1

2

chown -R mysql .

chgrp -R mysql .

3.5初始化授权表

安装MySQL之前,必须创建 MySQL 数据目录和初始化授权表,授权表定义了初始 MySQL 用户账户和访问权限。(了解更多)

1

scripts/mysql_install_db --user=mysql

这一步可能出现很多错误,当出现错误后,删除date数据目录,重新再来,直到出现如下图提示。

3.6更改数据目录权限

初始化授权表后会产生 date 目录,该目录所有者必须改为 mysql

1

2

chown -R root .

chown -R mysql data

3.7、复制配置文件

如果你不复制,MySQL 服务器将使用默认设置。

1

2

mkdir /etc/mysql

cp support-files/my-medium.cnf /etc/mysql/my.cnf

3.8建立软链接

3.81.将 "/usr/local/mysql/bin" 路径加入系统变量中,即直接编辑/etc/environment文件,或者新建软链接。

1

2

3

ln -s /usr/local/mysql/bin/mysqld_safe /usr/local/bin

ln -s /usr/local/mysql/bin/mysqladmin /usr/local/bin

ln -s /usr/local/mysql/bin/mysql /usr/local/bin

3.82如果上面的方法不生效。可以把Mysqlbin目录加入到系统变量中

1.vi  /etc/profile

2.export PATH=/usr/local/mysql/bin:$PATH

3.保存后,用户重新登录就可以了

3.9启动MySQL服务

mysqld_safe 是用来启动MySQL服务的,它比 mysqld 多了一些安全特性(关于mysqld_safe),mysqld_safe 的许多选项与mysqld的相同(关于 mysqld 命令行选项

1

bin/mysqld_safe --user=mysql &

参数是:--user  不是--usr

注意:user参数和&符号必不可少,如果出现问题,见启动故障诊断和排除,直到如下图所示。

启动时如果报锁定PID,用netstat –anp |grep mysql查出进程号杀掉。

. Php环境的安装配置:

# tar -zxvf php-5.2.9.tar.gz

# cd php-5.2.9

# ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with-mysql=/usr/local/mysql

#make

安装之后要make test测试一下

如果在安装PHP时出现如下提示:
/php-5.2.5/sapi/cli/php: error while loading shared libraries: /usr/local/mysql/lib/libmysqlclient.so.15: cannot restore segment prot after reloc: Permission denied
解决办法如下:
禁用 SELinux
# vi /etc/sysconfig/selinux
SELINUX=disabled
使用 chcon
# chcon -t texrel_shlib_t /usr/local/mysql/lib/libmysqlclient.so.15

#make install

如果只有一点提示信息说明有错误,多数是mysql服务没有启动。导致没有加载到mysql.

#cp php.ini-dist /usr/local/lib/php.ini

说明:

解析:在安装过程中,--prefix参数定义的是php 的安装目录。--with-apxs2Apxsapache提供的一个模块,是为了让php在运行时加载指定的模块到apache--with-mysql:指定mysql数据库

实现apache+php的整合

修改apache配置文件,使其支持PHP,#vi /usr/local/apache/conf/httpd.conf

1. 确认PHP模块已经添加?

LoadModule php5_module modules/libphp5.so

约在53行,如果我们在安装php时,在参数中跟加了apxs,那么apache的配置文件中已经存在了此项,如没添加则手工添加

2. 让apache识别*.php文件

在apache 配置文件中添加

AddType application/x-httpd-php .php

310行左右

3、测试apache和php是否整合成功

下面我们测试apache和php是否整合成功,在apache文档跟目录下新建一个小小的php程序

# cd /usr/local/apache/htdocs/

# vi index.php

在index.php文件中写入下面三行

phpinfo();

?>

重启apache服务

# /usr/local/apache/bin/apachectl stop

# /usr/local/apache/bin/apachectl start

在浏览器中输入http://localhost(http://127.0.0.1)/index.php 出现以下界面则说明整合成功

安装discuz

* 在安装dis之前我们还要安装UCenterUCenterdiscuz论坛的管理模板

解压后把文件夹upload复制到网站根目录下, 

将upload中的ucenter文件夹winscp拷贝到/usr/local/apache/htdocs下

在/usr/local/apache/htdos/ucenter目录下设置以下权限:

#chmod 777 ./data

#chmod 777 ./data/cache

#chmod 777 ./data/view

#chmod 777 ./data/avatar

#chmod 777 ./data/logs

#chmod 777 ./data/backup

chmod 777 ./data/tmp

然后IE访问http://localhost/ucenter 进行UCenter的安装

检查无误后单击下一步,如单击下一步报错的话一般问题的原因是没有权限写入

安装数据库

在安装数据库是,首先在自己的mysql里面建立相应的数据库

在这边的验证码看不清楚多刷新几次看到清楚的再输入就可以登陆了

出现一下页面:

安装discuz

将upload中的除ucenter文件夹之外的所有文件文件夹用winscp拷贝到目录/usr/local/apache/htdocs下

在/usr/local/apache/htdocs/bbs目录下设置以下权限:

给下面文件加上777权限,以免安装discuz时没有权限写入

#chmod 777 templates

#chmod 777 templates/default

#chmod 777 templates/default/*.*

#chmod 777 ./attachments

#chmod 777 forumdata

#chmod 777 forumdata/cache

#chmod 777 forumdata/templates

#chmod 777 config.inc.php

#chmod 777 forumdata/threadcaches

#chmod 777 forumdata/logs

#chmod 777 uc_client/data/cache

IE中浏览http://localhost/bbs/install/index.php(如果是windows访问输入虚拟机的ip地址)

安装数据库前现在虚拟机里面建立数据库

出现下面的页面你就成功了恭喜恭喜!!

FAQ

1. 在配置Apache时,虚拟机和真实的机器的区别:

真实机子要加上--with-expat=builtin

# ./configure --prefix=/usr/local/apache --enable-modules=so --with-expat=builtin

虚拟机子可以不加。

2. 使用CentOS系统和系统默认的Apache服务,Web路径

/var/www/html/

3. 在启动Mysql时如果报锁定PID,启动不了,

 使用使命令netstat –anp |grep mysql,查出进程号后,kill -9 pid

4. UCenter安装界面有乱码

改编码:

1系统的编码:

/etc/sysconfig/i18n

2.apache/conf/http.conf

编码

AddDefaultCharset GBK

3.在页面上直接右键设置编码-----------gbk

5.在安装这些软件之前要安装gcc环镜,RedHat推荐使用5.0以上的版本,在安装时候,选择现在就定制软件包,把开发环镜全部选上。

你可能感兴趣的:(linux下Discuzz的搭建(Apache,Php,Mysql,Ucenter,Discuzz))