xiu12 发表于 2019-4-17 15:46:55

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

Centos7 部署社交网站(discuz论坛)
  操作环境:

  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都要关闭,这边我文件权限全开,防止实验中一些小伙伴遇到不必要的问题(在实际工作中一定要严谨权限分配)
systemctlstop firewalld   //临时关闭防火墙
setenforce 0    //临时关闭selinux

  实验所需软件包(没有的都是用yum安装)
链接:https://pan.baidu.com/s/1AHnYBFBeQoovKaYkIYhaFQ
提取码:zcqn
  测试网络是否能够正常使用,出现以下效果表示网络正常
ping   www.qq.com
https://s1.运维网.com/images/blog/201904/06/5ac685802b5a58f5a3660c53693b058c.png
  cd /etc/yum.repos.d/\把yum源全放出来
https://s1.运维网.com/images/blog/201904/13/78698f353ed2b416eaa0772724d29205.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端口监听
https://s1.运维网.com/images/blog/201904/06/e3d69fefbd88c76a8b1c4ba2838667a3.png

vi passwd   //明文设置用户和密码
tom = 123      //格式:用户名 = 用户密码
vi authz   //详细权限配置文件
[/]   根目录,也就是/opt/svn/repo
tom = rw
   //指定目录
tom = rw   //程序员对此目录有读写权限
   //指定目录
tom = rw   //程序员对此目录有读写权限
mkdir /opt/svn/repo/webapp    //创建要被管理的目录
mkdir /opt/svn/repo/webphp
cd   /opt/svn/repo/webapp
vi index.html
nginx
cd   /opt/svn/repo/webphp
vi index.php

cd /opt/svn/repo
svn import webphp file:///opt/svn/repo/webphp/ -m "init web"   //初始化目录,导入webphp
svn import webapp file:///opt/svn/repo/webapp/ -m "init web"   //初始化目录,导入webapp
https://s1.运维网.com/images/blog/201904/06/f657b613ff33cd80c106b33cf7819b41.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 installnginx   //安装nginx
修改nginx配置文件
vi   /etc/nginx/conf.d/default.conf
location / {
root   /var/www/html/webapp;
indexindex.html index.htm;
}
添加以下内容,//#error_page404   /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_indexindex.php;
fastcgi_paramSCRIPT_FILENAME/var/www/html/webphp$fastcgi_script_name;
include      fastcgi_params;
}
    用nginx-t 检查配置文件有没有语法错误,出现以下效果说明配置文件没有问题
https://s1.运维网.com/images/blog/201904/06/595aa8f57002d7b2702c25486313d4da.png

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服务器配置进行确认
https://s1.运维网.com/images/blog/201904/06/9af1509027308ebe59d1c56699edd259.png
  启动nginx并测试是否正常
systemctl   startnginx
  查看80端口是否开启
https://s1.运维网.com/images/blog/201904/06/90119b3708ebc6340ad8fbb7976ac9ed.png
在浏览器 地址栏:    192.168.80.101
https://s1.运维网.com/images/blog/201904/06/430999a2120466d7465d2c4260b8cb1f.png
  ------------------------nginx----------------------------------
  3、部署mariadb服务(mysql)
yum   installmariadbmariadb-server-y   //安装mariadb
  systemctlstart   mariadb      //启动mariadb

查看3306端口启动了没有
https://s1.运维网.com/images/blog/201904/06/aee7aeba970250763eb21caa06981728.png
mysql_secure_installation          //给mysql进行安全设置
Y-Y-N-Y-Y
https://s1.运维网.com/images/blog/201904/06/2488bd89f941139a910e1d026f56e6ea.png
mysql   -uroot -p   //进入mariadb
https://s1.运维网.com/images/blog/201904/06/5815e5ececca7161b76476833efdaedc.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、安装编译环境
  yuminstall-ygccgcc-c++ make
  3、安装php

yum installbzip2-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
https://s1.运维网.com/images/blog/201904/06/438c08bb666dcd7b4ae7303ea15806ab.png
https://s1.运维网.com/images/blog/201904/06/6749346d40bcbe2be3b6f8bb88e6a2b3.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/
cpphp-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
https://s1.运维网.com/images/blog/201904/06/8822b16fda327202cea8c899db6654cf.png

mkdir -p /var/www/html
cd/var/www/html
yuminstall subversion -y
svn co svn://192.168.80.100/webphp
https://s1.运维网.com/images/blog/201904/06/839df283cbac56fb683ca127cd7fcb56.png
  在浏览器上:
http://192.168.80.101/index.php
https://s1.运维网.com/images/blog/201904/06/d05bc03514767219ab74e0622b17bd49.png
http://192.168.80.101
https://s1.运维网.com/images/blog/201904/06/e4e8046dab877d8d0c9456b67d4a6341.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

  在浏览器上:
http://192.168.80.101/index.php
https://s1.运维网.com/images/blog/201904/06/99ee10766a598272e92a462b8bfe6f23.png
  ---------------------------------php----------------------------------------------------------------------
  部署nfs服务

yum   install   nfs-utils -y
mkdir   /opt/web
vi   /etc/exports
/opt/web   192.168.80.0/24(rw,sync)
systemctl    start   rpcbind
systemctl    start   nfs
systemctl   enablerpcbind
systemctl   enable   nfs
yum install unzip -y
unzip Discuz_X3.4_SC_UTF8_0101.zip
cd dir_SC_UTF8/
cp -rf upload/ /opt/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的目录

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设置的,一定要按实际情况!!!!
https://s1.运维网.com/images/blog/201904/06/9af72a90a27588ea18434212ba5bb2a8.pnghttps://s1.运维网.com/images/blog/201904/06/65032ece66c6c03534582d51a3f85a4a.pnghttps://s1.运维网.com/images/blog/201904/06/c5fe2c144ab5aac840d8efaa7347c5d0.pnghttps://s1.运维网.com/images/blog/201904/06/7354e46dfd4335842f04d18d56086e38.pnghttps://s1.运维网.com/images/blog/201904/06/99d09d092e1e1accbdae95748aa2bc60.pnghttps://s1.运维网.com/images/blog/201904/06/5a08781e35531b434f41042e4164368b.png
  在浏览器输入:http://192.168.80.101/bbs/upload/index.php
https://s1.运维网.com/images/blog/201904/06/a173a0faef74cb632114a4c8882525dc.png
  ---------------------------------------社交网站部署完成-------------------------------------------------------------------
  实验中遇到了问题可以在下方评论本人会帮忙解答



页: [1]
查看完整版本: Centos7 部署社交网站(discuz论坛)