且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

搭建Discuz论坛的两种方式

更新时间:2022-09-16 15:26:37

 Linux+Apache+Mysql/MariaDB+Perl/PHP/Python一组常用来搭建动态网站或者服务器的开源软件,本身都是各自独立的程序,但是因为常被放在一起使用,拥有了越来越高的兼容度,共同组成了一个强大的Web应用程序平台。

    随着开源潮流的蓬勃发展,开放源代码的LAMP已经与J2EE和.Net商业软件形成三足鼎立之势,并且该软件开发的项目在软件方面的投资成本较低,因此受到整个IT界的关注。

目前LAMP架构是大多数中小企业最青睐的PHP架构选择,也是众多Linux SA喜欢选择的一套架构。接下来介绍下两种安装LAMP的两种方式。

一、yum安装

1、安装lamp,并启动相关服务

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
[root@jacken ~]#yum -y install httpd httpd-devel  mysql mysql-server mysql-libs php php-devel 
这一条命令LAMP环境即可安装成功,只需要重启apache、mysql服务即可
[root@jacken ~]# /etc/init.d/mysqld start
Initializing MySQL database:  Installing MySQL system tables...
OK
Filling help tables...
OK
To start mysqld at boot time you have to copy
support-files/mysql.server to the right place for your system
PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
To do so, start the server, then issue the following commands:
/usr/bin/mysqladmin -u root password 'new-password'
/usr/bin/mysqladmin -u root -h jacken password 'new-password'
Alternatively you can run:
/usr/bin/mysql_secure_installation
which will also give you the option of removing the test
databases and anonymous user created by default.  This is
strongly recommended for production servers.
See the manual for more instructions.
You can start the MySQL daemon with:
cd /usr /usr/bin/mysqld_safe &
You can test the MySQL daemon with mysql-test-run.pl
cd /usr/mysql-test ; perl mysql-test-run.pl
Please report any problems with the /usr/bin/mysqlbug script!
                                                           [  OK  ]
Starting mysqld:                                           [  OK  ]
[root@jacken ~]# /etc/init.d/httpd start
Starting httpd:                                            [  OK  ]
[root@jacken ~]# chkconfig mysqld on
[root@jacken ~]# chkconfig httpd on
[root@jacken ~]#

2、验证安装是否成功

搭建Discuz论坛的两种方式测试是否支持php环境

1
2
3
4
5
6
7
[root@jacken ~]# cd /var/www/html/
[root@jacken html]# ls
[root@jacken html]# vim phpinfo.php
[root@jacken html]# cat phpinfo.php
<?php
phpinfo();
?>

搭建Discuz论坛的两种方式

3、安装Discuz

1
2
3
4
5
6
7
[root@jacken ~]# ls
Discuz_X3.2_SC_UTF8.zip
[root@jacken ~]# unzip -q -d /var/www/html/ Discuz_X3.2_SC_UTF8.zip 
[root@jacken ~]# ls /var/www/html/
phpinfo.php  readme  upload  utility
[root@jacken ~]# cd /var/www/html/
[root@jacken html]# mv upload/* ./;rm -rf readme utility

搭建Discuz论坛的两种方式

点同意

搭建Discuz论坛的两种方式


设置相关目录权限

1
2
3
[root@jacken html]# pwd
/var/www/html
[root@jacken html]# chmod -R o+w config/ data/ uc_*

此时目录已可写,但是出现mysql链接不支持

搭建Discuz论坛的两种方式

1
2
3
4
[root@jacken upload]# yum -y install php-mysql
[root@jacken upload]# /etc/init.d/httpd restart
Stopping httpd:                                            [  OK  ]
Starting httpd:                                            [  OK  ]

搭建Discuz论坛的两种方式

下一步

搭建Discuz论坛的两种方式

创建discuz数据库,设置root密码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
mysql> create database discuz;
Query OK, 1 row affected (0.00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
mysql> use mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql> update user set password=password('hello'where user='root';
Query OK, 0 rows affected (0.00 sec)
Rows matched: 3  Changed: 0  Warnings: 0
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
mysql> exit;
Bye
[root@jacken]#

搭建Discuz论坛的两种方式

搭建Discuz论坛的两种方式

搭建Discuz论坛的两种方式

搭建Discuz论坛的两种方式

至此,LAMP基本搭建完毕。

进入论坛管理中心,会提示删除安装页

搭建Discuz论坛的两种方式

1
2
3
[root@jacken ~]# cd /var/www/html/upload/install/
[root@jacken install]# mv index.php index.php.bak
[root@jacken install]#

LAMP安装完毕。


二、源码安装

下载相应的软件包

Apache http://mirror.bit.edu.cn/apache/httpd/httpd-2.2.27.tar.gz

Mysql http://downloads.mysql.com/archives/mysql-5.1/mysql-5.1.63.tar.gz

Php http://mirrors.sohu.com/php/php-5.3.28.tar.bz2

Discuz http://download.comsenz.com/DiscuzX/3.2/Discuz_X3.2_SC_UTF8.zip

1
2
3
4
[root@jacken ~]# cd /softwares/
[root@jacken softwares]# ls
Discuz_X3.2_SC_UTF8.zip  httpd-2.2.27.tar.gz  mysql-5.1.63.tar.gz  php-5.3.28.tar.bz2
[root@jacken softwares]#

安装环境包

1
2
[root@jacken softwares]# yum -y install apr-devel apr-util-devel
[root@jacken ~]# yum -y install gcc

1、安装Apache

1
2
3
4
5
6
[root@jacken ~]# cd /softwares/
[root@jacken softwares]# ls
Discuz_X3.2_SC_UTF8.zip  httpd-2.2.27.tar.gz  mysql-5.1.63.tar.gz  php-5.3.28.tar.bz2
[root@jacken softwares]# tar -zxf httpd-2.2.27.tar.gz 
[root@jacken softwares]# cd httpd-2.2.27
[root@jacken httpd-2.2.27]#./configure --prefix=/usr/local/apache --enable-so --enable-rewrite&&make&&make install

2、安装Mysql

1
2
3
4
5
6
[root@jacken ~]# cd /softwares/
[root@jacken softwares]# ls
Discuz_X3.2_SC_UTF8.zip  httpd-2.2.27  httpd-2.2.27.tar.gz  mysql-5.1.63.tar.gz  php-5.3.28.tar.bz2
[root@jacken softwares]# tar -zxf mysql-5.1.63.tar.gz 
[root@jacken softwares]# cd mysql-5.1.63
[root@jacken mysql-5.1.63]# ./configure --prefix=/usr/local/mysql --enable-assembler && make && make install

报错

搭建Discuz论坛的两种方式

1
2
[root@jacken mysql-5.1.63]# yum –y  install ncurses-devel
[root@jacken mysql-5.1.63]# ./configure --prefix=/usr/local/mysql --enable-assembler && make && make install

报错

搭建Discuz论坛的两种方式

1
2
3
4
[root@jacken mysql-5.1.63]# yum -y install gcc-c++
[root@jacken mysql-5.1.63]# ./configure --prefix=/usr/local/mysql --enable-assembler && make && make install
[root@jacken mysql-5.1.63]# echo $?
0

配置Mysql服务为系统服务

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
[root@jacken ~]# cp /usr/local/mysql/share/mysql/my-medium.cnf  /etc/my.cnf 
[root@jacken ~]# cp /usr/local/mysql/share/mysql/mysql.server /etc/init.d/mysqld
[root@jacken ~]# chkconfig --add mysqld
[root@jacken ~]# chkconfig --level 345 mysqld on
[root@jacken ~]# cd /usr/local/mysql/
[root@jacken mysql]# useradd mysql
[root@jacken mysql]# chown -R mysql.mysql /usr/local/mysql
[root@jacken mysql]# /usr/local/mysql/bin/mysql_install_db --user=mysql
[root@jacken mysql]# chown -R mysql var
[root@jacken mysql]# ll -d var
drwx------. 4 mysql root 4096 Mar 31 09:54 var
[root@jacken mysql]# /usr/local/mysql/bin/mysqld_safe --user=mysql&
[1] 16857
[root@jacken mysql]# 150331 09:56:02 mysqld_safe Logging to '/usr/local/mysql/var/jacken.err'.
150331 09:56:02 mysqld_safe Starting mysqld daemon with databases from /usr/local/mysql/var
[root@jacken mysql]#

3、安装Php

1
2
3
4
5
6
7
8
9
10
[root@jacken ~]# cd /softwares/
[root@jacken softwares]# ls
Discuz_X3.2_SC_UTF8.zip  httpd-2.2.27  httpd-2.2.27.tar.gz  mysql-5.1.63  mysql-5.1.63.tar.gz  php-5.3.28.tar.bz2
[root@jacken softwares]# tar -jxf php-5.3.28.tar.bz2 
[root@jacken softwares]# cd php-5.3.28
[root@jacken php-5.3.28]# ./configure \
> --prefix=/usr/local/php5 \
> --with-config-file-path=/usr/local/php/etc \
> --with-apxs2=/usr/local/apache/bin/apxs \
> --with-mysql=/usr/local/mysql/

报错

搭建Discuz论坛的两种方式

1
2
3
4
5
6
[root@jacken php-5.3.28]# yum -y install libxml2 libxml2-devel
[root@jacken php-5.3.28]# ./configure \
> --prefix=/usr/local/php5 \
> --with-config-file-path=/usr/local/php5/etc \
> --with-apxs2=/usr/local/apache/bin/apxs \
> --with-mysql=/usr/local/mysql/

搭建Discuz论坛的两种方式

1
2
3
4
[root@jacken php-5.3.28]#make && make install
[root@jacken php-5.3.28]# echo $?
0
[root@jacken php-5.3.28]#

安装成功

4、整合Apache+Php

整合apache+php环境,修改httpd.conf配置文件,然后加入如下语句:

LoadModule     php5_module modules/libphp5.so (默认可能已存在)

AddType     application/x-httpd-php .php

DirectoryIndex  index.php index.html (把index.php加入index.html之前)

然后在/usr/local/apache/htdocs目录下创建index.php测试页面,

1
2
3
4
5
6
7
8
9
[root@jacken htdocs]# ls
index.html  index.php
[root@jacken htdocs]# cat index.php 
<?php
phpinfo();
?>
[root@jacken htdocs]# pwd
/usr/local/apache/htdocs
[root@jacken htdocs]#

搭建Discuz论坛的两种方式

5、安装discuz论坛

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
[root@jacken ~]# cd /softwares/
[root@jacken softwares]# ls
Discuz_X3.2_SC_UTF8.zip  httpd-2.2.27.tar.gz  mysql-5.1.63.tar.gz  php-5.3.28.tar.bz2
httpd-2.2.27             mysql-5.1.63         php-5.3.28
[root@jacken softwares]#
[root@jacken softwares]# unzip Discuz_X3.2_SC_UTF8.zip  -d /usr/local/apache/htdocs/
[root@jacken softwares]# cd /usr/local/apache/htdocs/
[root@jacken htdocs]# ls
index.html  index.php  readme  upload  utility
[root@jacken htdocs]# mv upload/* .
mv: overwrite `./index.php'? y
[root@jacken htdocs]# ls
admin.php  config           data         home.php    member.php  readme      sta
api        connect.php      favicon.ico  index.html  misc.php    robots.txt  tem
api.php    cp.php           forum.php    index.php   plugin.php  search.php  uc_
archiver   crossdomain.xml  group.php    install     portal.php  source      uc_
[root@jacken htdocs]# chmod -R o+w data/ config/ uc_server/ uc_client/
[root@jacken htdocs]#

然后访问IP安装discuz论坛,如下图,选择“我同意”

搭建Discuz论坛的两种方式

进入如下界面,数据库安装,如果不存在则需要新建数据库并授权。

搭建Discuz论坛的两种方式

数据库创建及授权命令如下:

搭建Discuz论坛的两种方式

点击下一步

搭建Discuz论坛的两种方式

安装完成,点击访问

搭建Discuz论坛的两种方式

管理员登录

搭建Discuz论坛的两种方式

自此LAMP环境整合并搭建成功,通过IP直接访问即可



本文转自Jacken_yang 51CTO博客,原文链接:http://blog.51cto.com/linuxnote/1631251,如需转载请自行联系原作者