Centos7 部署社交网站(discuz论坛)

举报
技术火炬手 发表于 2019/04/08 14:41:07 2019/04/08
【摘要】 操作环境:192.168.80.100 : svn192.168.80.101 : nginx192.168.80.102 : mariadb192.168.80.103 : php192.168.80.104 : nfs注意:为了防止不必要的错误,五台虚拟机都要联网,并且防火墙和selinux都要关闭systemctl stop firewalld //临时关闭防火墙setenforce ...

操作环境:

192.168.80.100 : svn
192.168.80.101 : nginx
192.168.80.102 : mariadb
192.168.80.103 : php
192.168.80.104 : nfs
注意:为了防止不必要的错误,五台虚拟机都要联网,并且防火墙和selinux都要关闭
systemctl stop firewalld //临时关闭防火墙
setenforce 0 //临时关闭selinux

实验所需软件包(没有的都是用yum安装)

链接:https://pan.baidu.com/s/1AHnYBFBeQoovKaYkIYhaFQ 

提取码:zcqn

测试网络是否能够正常使用,出现以下效果表示网络正常

ping www.qq.com

image.png

-----------------------------------以上是五台机器都要执行的操作------------------------------------------------------


1、搭建SVN

yum install -y subversion  --安装SVN
mkdir -p /opt/svn/repo       //创建/opt/svn/repo目录
svnadmin create /opt/svn/repo/    //创建一个版本仓库
cd /opt/svn/repo/conf/      //切换到配置文件中

vi svnserve.conf
去掉注释,修改以下内容,前面一定不能有空格:
anon-access = none      //匿名用户没有任何权限
auth-access = write      //认证用户具有写权限
password-db = /opt/svn/repo/conf/passwd    //用户的密码文件
authz-db = /opt/svn/repo/conf/authz    //用户信息文件
realm =    #指定版本库的认证域,即在登录时提示的认证域名称 

svnserve -d -r /opt/svn/repo/     //以守护模式启动SVN服务,关闭用kill pid
netstat -anptu | grep svnserve  //3690端口监听

image.png

vi passwd   //明文设置用户和密码
tom = 123      //格式:用户名 = 用户密码

vi authz   //详细权限配置文件
[/]     根目录,也就是/opt/svn/repo  
tom = rw

[/webapp]     //指定目录
tom = rw     //程序员对此目录有读写权限

[/webphp]     //指定目录
tom = rw     //程序员对此目录有读写权限

mkdir /opt/svn/repo/ webapp    //创建要被管理的目录
mkdir /opt/svn/repo/ webphp
cd   /opt/svn/repo/webapp
Vi index.html
<h1>nginx</h1>

cd   /opt/svn/repo/webphp
Vi index.php
<?php
Phpinfo();
?>

svn import webphp file:///opt/svn/repo/webphp/ -m "init web"   //初始化目录,导入webphp

svn import webapp file:///opt/svn/repo/webapp/ -m "init web"   //初始化目录,导入webapp

image.png

 ------------------------------------------------SVN------------------------------------------------------------------------------------

2、部署nginx服务

rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm           //安装一个nginx源

yum  -y install  nginx   //安装nginx

修改nginx配置文件
vi   /etc/nginx/conf.d/default.conf
location / {
        root   /var/www/html/webapp;
        index  index.html index.htm;
    }
添加以下内容,//#error_page  404   /404.html; 上面添加
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ {
                       root   /var/www/html/webapp;
            }

        location ~ \.php$ {
            root           /var/www/html/webphp;
            fastcgi_pass   192.168.80.103:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  /var/www/html/webphp$fastcgi_script_name;
            include        fastcgi_params;
        }
    用nginx  -t 检查配置文件有没有语法错误,出现以下效果说明配置文件没有问题
mkdir  -p   /var/www/html   //创建自定义的网页根目录
    cd  /var/www/html    //切换到网页根目录
yum   install    subversion   -y //安装svn,需要从svn服务器拉取网页文件
svn co svn://192.168.80.100/webapp    //从svn服务器拉取webapp目录,下面交互式按照  svn服务器配置进行确认
Centos7 部署社交网站(discuz论坛)

启动nginx并测试是否正常
systemctl start nginx

image.png

image.png

查看80端口是否开启
在浏览器 地址栏: 192.168.80.101

image.png

image.png

------------------------nginx----------------------------------

3、部署mariadb服务(mysql)

yum install mariadb mariadb-server -y //安装mariadb
systemctl start mariadb //启动mariadb
查看3306端口启动了没有
Centos7 部署社交网站(discuz论坛)
mysql_secure_installation //给mysql进行安全设置
Y-Y-N-Y-Y
Centos7 部署社交网站(discuz论坛)
mysql -uroot -p //进入mariadb

image.png

image.png

image.png


-----------------------------------mariadb----------------------------------------------------

4、部署php

1、安装依赖件

yum -y install \
libjpeg \
libjpeg-devel \
libpng libpng-devel \
freetype freetype-devel \
libxml2 \
libxml2-devel \
zlib zlib-devel \
curl curl-devel \
openssl openssl-devel

2、安装编译环境

yum install -y gcc gcc-c++ make

3、安装php

yum install  bzip2  -y
tar xjvf php-7.1.10.tar.bz2  -C  /opt/

cd /opt/php-7.1.10
./configure \
--prefix=/usr/local/php \
--with-mysql-sock=/var/lib/mysql/mysql.sock \  
--with-mysqli \
--with-zlib \
--with-curl \
--with-gd \
--with-jpeg-dir \
--with-png-dir \
--with-freetype-dir \
--with-openssl \
--enable-mbstring \
--enable-xml \
--enable-session \
--enable-ftp \
--enable-pdo \
--enable-tokenizer \
--enable-zip  \
--enable-fpm

在mariadb上查看

vi /etc/my.cnf

image.png

image.png

make && make install   //编译并且安装(过程稍微有点漫长。。。。。)
cp php.ini-development /usr/local/php/lib/php.ini
vi /usr/local/php/lib/php.ini
mysqli.default_socket = /var/lib/mysql/mysql.sock
date.timezone = Asia/Shanghai
cd /usr/local/php/etc/
cp  php-fpm.conf.default php-fpm.conf
cd /usr/local/php/etc/php-fpm.d/
cp www.conf.default www.conf
vi   www.conf
listen = 0.0.0.0:9000
cd /usr/local/php/etc/
vi php-fpm.conf
;pid = run/php-fpm.pid  在这个下面添加
;user = nginx
;group = nginx
/usr/local/php/sbin/php-fpm -c /usr/local/php/etc/php.ini   //启动php
netstat -anpt | grep 9000

image.png

mkdir -p /var/www/html
cd  /var/www/html
yum  install subversion -y
svn co svn://192.168.80.100/webphp

image.png

在浏览器上:
http://192.168.80.101/index.php

image.png

http://192.168.80.101

image.png

测试PHP网页能否访问Mysql数据库
在数据库服务器上:(mariadb)

CREATE DATABASE bbs;
GRANT all ON bbs.* TO 'bbsadm'@'%' IDENTIFIED BY 'admin123';
GRANT all ON bbs.* TO 'bbsadm'@'localhost' IDENTIFIED BY 'admin123';
flush privileges;

在php服务器:

vi  /var/www/webphp/index.php
<?php
$link=mysqli_connect('192.168.80.102','bbsadm','admin123');
if($link) echo "<h1>Success!!</h1>";
else echo "Fail!!";
?>

在浏览器上:
http://192.168.80.101/index.php

image.png


---------------------------------php----------------------------------------------------------------------


部署nfs服务

yum   install   nfs-utils -y
mkdir   /opt/web
vi   /ext/exports
/opt/web   192.168.80.0/24(rw,sync)
systemctl    start   rpcbind
systemctl    start   nfs
systemctl   enable  rpcbind
systemctl   enable   nfs
yum install unzip -y
unzip Discuz_X3.4_SC_UTF8_0101.zip
cd dir_SC_UTF8/
cp -rf upload/ ../web/
cd  /opt/web/upload
chmod -R 777 config/
chmod -R 777 data/
chmod -R 777 uc_client/
chmod -R 777 uc_server/


-------------------------nfs--------------------------------------

最后的部署

在nginx的/var/www/html/webapp/ 下创建一个名为bbs的目录

mkdir /var/www/html/webapp/bbs
yum   install nfs-utils  -y
cd /var/www/html/webapp
mount.nfs   192.168.80.104:/opt/web   /var/www/html/webapp/bbs
在php的/var/www/html/webphp/ 下创建一个名为bbs的目录

在php的/var/www/html/webphp/ 下创建一个名为bbs的目录

mkdir /var/www/html/webphp/bbs
yum   install nfs-utils  -y
mount.nfs   192.168.80.104:/opt/web   /var/www/html/webphp/bbs

进行论坛安装

在浏览器内访问:192.168.80.101/bbs/upload/install/index.php

注意:安装的所以参数都是之前在mariadb设置的,一定要按实际情况!!!!

image.png

image.png

image.png

image.png

image.png

image.png

在浏览器输入:http://192.168.80.101/bbs/upload/index.php

image.png


---------------------------------------社交网站部署完成-------------------------------------------------------------------


实验中遇到了问题可以在下方评论本人会帮忙解答

-------------------

本文转自Ly雨泣博客51CTO博客

原文链接:https://blog.51cto.com/13701082/2374636

如需转载,请联系作者授权


【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。