陈奇网络工作室

在社交网站上构建LNMPSVNNFS

建设工作站服务器

关于构建社交网站的详细信息

构建社交网站将要求SVN服务器进行版本控制,以便管理PHP程序员开发的代码。 社交网站的第一个版本部署在LNMP平台之上,前端为Nginx服务器,通过fastcgi协议接入后端PHP服务器,为了保证数据的安全,将mysql数据

社交网络项目包含用户的相册功能,用户可以上传照片。 上传照片需要使用共享存储。 共享存储有多种开源方案,包括NFS、MFS和FastDFS。 本文简化了存储方案,用NFS代替MFS的功能,目前网络根据公司要求进行关联构建。

此案例拓扑:

个案环境:

主机OSIP地址主要软件nginx centos 7192.168.88.128 nginx-1.14.0.tar.gzphpcentos 7192.168.88.129

php-5.6.38.tar.gz

mysqlmastercentos 7192.168.88.130 MySQL-5.6.41.tar.gzmysqlslavecentos 7192.168.88.131 MySQL-5.6.41.ttar

本文中的所有软件都是使用wget和yum安装的。

一.构建Nginx

1、设置环境包

yuminstallgccgcc-cpcrepcre-devel zli B- devel-y

2、创建Nginx用户

useradd -M -s /sbin/nologin nginx

3、下载nginx

cd /opt/#下载到opt目录中

wget 3358 nginx.org/download/nginx-1.14.0.tar.gz #下载nginx

4、解压缩编译安装

tar zxf nginx-1.14.0.tar.gz #解压

cd nginx-1.14.0/

./configure \\\\& quot;

prefix=/usr/local/nginx\& amp; quot; #指定安装路径

user=nginx\\ & amp; quot; #指定用户

group=nginx\\ & amp; quot; #指定组

打开-with-http_stub_status_module#统计信息模块

生成安装#安装

5、优化

ln-s/usr/local/nginx/sbin/*/usr/local/sbin/#软链接优化

vim /etc/init.d/nginx #添加启动脚本

#! /bin/bash

# chkconfig :9920

#this is nginx init

Prog=& #039;/usr/local/nginx/sbin/nginx & amp; #039;

PIDF=& #039;/usr/local/nginx/logs/nginx.PID & amp; #039;

case & #039; $1& #039; 输入

start )

$PROG

stop )

kill -s QUIT $(cat $PIDF )

restart )

$0 stop

$ 0开始

导读)

kill -s HUP $(cat $PIDF )

* )

echo& #039; please use:{开始|停止}

exit 1

欧洲航空

exit 0

#kill -s QUIT $(cat $PIDF )表示基于PID退出Nginx进程

#kill -s HUP $(cat $PIDF )显示基于进程号重新加载的配置

6、要访问PHP页面,必须修改配置文件的fastcgi访问接口。

修改vim/usr/local/nginx/conf/nginx.conf #配置文件

location ~ \\\\.php$ {

root /var/www/html/webphp;

fastcgi _ pass 192.168.88.131:9000;

fastcgi_index index.php;

include fastcgi.conf;

}

二.构建MYSQL主从服务器

1、设置环境包

yuminstallgccgcc-cmakecmakencurses-develbisonlibaio-devel autoconf-y

2、下载mysql5.6

cd /opt/#下载到opt目录中

下载wget 3359 cdn.MySQL.com//downloads/MySQL-5.6/MySQL-5.6.41.tar.gz # wget命令

3、创建mysql用户

useradd -s /sbin/nologin mysql

4、编译安装

cd mysql-5.6.41/

cmake \\\\

- DC make _ install _ prefix=/usr/local/MySQL\\ & amp; quot;

-DDEFAULT_CHARSET=utf8 \\\\& quot;

- d default _ collation=utf8 _ general _ ci\\

- d with _ extra _ charsets=all\\\& amp; quot;

-DSYSCONFDIR=/etc \\\\& quot;

- dmysql _ datadir=/home/MySQL/\\\ & amp; quot;

- dmysql _ UNIX _ addr=/home/MySQL/MySQL.sock\\ & amp; quot;

- d with _ myisam _ storage _ engine=1\\& amp; quot;

- d with _ inno base _ storage _ engine=1\\& amp; quot;

- d with _ archive _ storage _ engine=1\\& amp; quot;

- d with _ black hole _ storage _ engine=1\\& amp; quot;

- d enabled _ local _ infile=1\\\ & amp; quot;

-DWITH_SSL=system \\\\& quot;

-DMYSQL_TCP_PORT=3306 \\\\& quot;

-DENABLE_DOWNLOADS=1 \\\\& quot;

-DWITH_SSL=bundled

生成安装#安装

5、优化

复制CP support-files/my-default.cn f/etc/my.cn f #配置文件

CP support-files/MySQL.server/etc/init.d/mysqld #复制启动脚本

vim /etc/init.d/mysqld #修改启动脚本

basedir=/usr/local/mysql

datadir=/home/mysql

chmod x /etc/init.d/mysqld #添加执行权限

将chkconfigadd mysqld #添加到启动项目

CK configlevel 35 MySQL don # 35模式启动

echo& #039; path=$ path:/usr/local/MySQL/bin/& amp; #039; 添加/etc/profile#环境变量

更新source /etc/profile #环境变量

更改chown-r MySQL.MySQL/usr/local/MySQL # MySQL安装目录的所有者组

6 .初始化数据库

/usr/local/MySQL/scripts/MySQL _ install _ db\\ & amp; quot;

user=MySQL\& amp; quot;

l data=/var/lib/MySQL\\

basedir=/usr/local/MySQL\& amp; quot;

datadir=/home/MySQL

建立指向ln-s/var/lib/MySQL/MySQL.sock/home/MySQL/MySQL.sock # sock文件的软链接

7 .启动两台mysql服务器

服务系统开始

8、修改主从服务器配置文件

主服务器)

vim /etc/my.cnf

[ mysqld ] #添加到mysqld模块下

server-id=11

log-bin=/usr/local/MySQL/data/master-bin #指定日志文件的位置

log-slave-updates=true #可以从服务器读取主服务器的内容

重新启动serviceMySQLDrestart#MySQL

来自服务器)

vim /etc/my.cnf

[ mysqld ] #添加到mysqld模块下

server-id=22

log-bin=/usr/local/MySQL/data/slave-bin

relay-log=realy-log-bin

relay-log-index=slave-relay-bin.index

重新启动serviceMySQLDrestart#MySQL

9、建立mysql主从关系

主服务器)

mysqlgrantreplicationslaveon *.* to & amp; #039; 我的天空& amp; #039; @& #039; 192.168.88.%& #039; 标识by & amp; #039; 123123& #039; #取消权利

mysql show master status; #查看主服务器的主状态

————33——-33——-3——33——-——33543——3—————— -

| file|binlog _ do _ db|binlog _ ignore _ db|executed _ gtid _ set |

————33——-33——-3——33——-——33543——3—————— -

| master-bin.000001 | 411 | | | |

————33——-33——-3——33——-——33543——3—————— -

1原始插入( 0.00秒)。

来自服务器)

mysqlchangemastertomaster _ host=& amp; #039; 192.168.88.129& #039;master_user=& #039; 我的天空& amp; #039;master_password==& #039; 123123。

master_log_file=& #039; master-bin.000001& #039;master_log_pos=411;

mysql start slave; 开始微笑

Query OK,0Rowsaffected(0.04sec ) )。

mysql show slave status\\\\G; #观察主从的状态,确认以下两个行为是主从同步成功。

slave _ io _ running :是

slave _ SQL _ running :是

三.构建PHP服务器

1、设置环境包

yum-yinstallgdlibxml2- devel libjpeg-devel libpng-devel zlib-devel fontconfig-devel OpenSSL-devel bzip2- develgccgcc

2、下载php

下载wget 3358101.96.10.64/cn2.PHP.net/distributions/PHP-5.6.38.tar.gz # wget命令

3、编译安装

./configureprefix=/usr/local/PHP-fpm\\

enable-fpm-with-zlib \

with-PDO-MySQL\\

enable-mbstring\\ & amp; quot;

with-GDwith-png-dir=/usr/lib 64\\

with-JPEG-dir=/usr/lib 64\\ & amp; quot;

with-freetype-dir=/usr/lib 64

生成安装#安装

4、优化

复制CP PHP.ini-development/usr/local/PHP-fpm/PHP.ini #配置文件

ln-s/usr/local/PHP-fpm/bin/*/usr/local/bin/# PHP命令文件软件链接

ln-s/usr/local/PHP-fpm/sbin/*/usr/local/sbin/# PHP命令文件软件链接

5、在php上安装加速器

tarzxfzendguardloader-PHP-5.3-Linux-glibc 23-x86 _ 64.tar.gz-c/opt /

cdzendguardloader-PHP-5.3-Linux-glibc 23-i386/PHP-5.3.x

将cpzendguardloader.so/usr/local/PHP-fpm/lib/PHP #加速器模块复制到PHP目录中

6、php识别加速器

修改vim /usr/local/php-fpm/php.ini #配置文件,添加以下三行

[Zend Guard Loader]

Zend _ extension=/usr/local/PHP-fpm/lib/PHP/zendguardloader.so

zend_loader.enable=1

7 .打开Nginx的php支持

cd /usr/local/php-fpm/etc

CP PHP-fpm.conf.default PHP-fpm.conf #复制配置文件模板

vi php-fpm.conf #修改如下

pid=run/php-fpm.pid

user=php

group=php

pm.max_children=50

pm.start_servers=20

pm.min_spare_servers=5

pm.max_spare_servers=35

监听器=0.0.0.0: 9000 #监听所有端口

8、创建php用户并启动服务

创建useradd-m-s/sbin/nolog in PHP # PHP用户

/usr/local/sbin/php-fpm #启动服务

[ root @ localhost etc ] #显示netstat-ntap|grep PHP # 9000端口

TCP 00.0.0.0:9000.0.0.0:* listen 15183/PHP-fpm:mast

9、设立php网站

mkdir -p /var/www/html/webphp

cd/var/www/html/webphp

Echo& #039; thisisPHP-nginxtest& #039; 创建index.PHP#网站主页

10、测试,访问http://192.168.88.128/index.php

四.构建SVN服务器

1、安装SVN

yum install subversion -y #安装SVN

[ root @ localhost~] # svnserve显示版本信息

svnserve,版本1.7.14(r1542130 )。

编译于apr 112018,02:40:28

版权所有( c ) 2013 Apache软件基金会。

这个软件包含了很多人的贡献。 有关详细信息,请参见文件NOTICE。

Subversion是开放源代码软件。 请参阅http://subversion.apache.org/网站。

2、建立SVN仓库

mkdir -p /opt/svn/#先创建svn目录

svnadmin create/opt/SVN # svnadmin命令将此目录用作仓库

[ root @ localhost~] # ls/opt/SVN/# SVN浏览仓库

confdbformathookslocksreadme.txt

3.SVN配置文件设置

修改vim/opt/SVN/conf/svnserve.conf #配置文件

anon-access=none

自动-访问=写入

password-db=/opt/SVN/conf/passwd

authz-db=/opt/svn/conf/authz

4 .配置passwd和authz文件

vim /opt/svn/conf/passwd

[users]

# harry=harryssecret

# sally=sallyssecret

phpuser=123123 #添加用户和密码

vim /opt/svn/conf/authz #在最后一行中添加以下内容

[/]

phpuser=r #在/opt/svn目录下具有读取权限

[/webphp]

phpuser=rw #对webphp具有读写权限,用于上载和下载

5、打开SVN服务

[ root @ localhost SVN ] # svnserve-d-r/opt/SVN #关闭SVN并使用kill命令杀死进程

[ root @ localhost SVN ] # netstat-ntap|grep SVN #视口

TCP 00.0.0.0:3690.0.0.0:* listen 39725 svnserve

6 .创建webphp目录并初始化webphp目录

cd /opt/svn #是在/opt/svn下创建的

创建mkdirWebPHP#WebPHP目录

[root@localhost svn]# cd webphp/

[ root @ localhost webphp ] # touch test.txt # webphp写入

[ root @ localhost webphp ] #查看ls #文件

test.txt

[ root @ localhost SVN ] # svnimportwebphpfile://opt/SVN/repo/webphp-m & amp; #039; 初始化& #039; webphp目录初始化

正在增加webphp/test.txt

提交后的版本是1。

7、测试SVN

yum install subversion -y #将先安装svn

在/usr/local/nginx/html下切换到nginx服务器

svncpsvn://192.168.88.132/webphp

SVN测试成功

五.构建NFS服务器

1、打开rpcbind和nfs服务

服务rpcbind start

服务NFS start

2、修改个人资料

vim /etc/exports

/opt/php*(rw,sync ) #所有主机都可以装载/opt/PHP目录,并且具有读写权限

3、编制目录,公开分享

mkdir /opt/php

exportfs -rv #发行版共享

4、客户端视图

[ root @ localhost html ] # showmount-e 192.168.88.133

导出列表for 192.168.88.133 :

/opt/php *

5、挂载

mount.NFS 192.168.88.133:/opt/PHP/var/www/html/webphp/# NFS在本地装载和使用

要以MFS分布式存储方式装载,请参阅https://blog.51cto.com/13760226/2286907

详情请访问云服务器、域名注册、虚拟主机的问题,请访问西部数码代理商官方网站: www.chenqinet.cn

相关推荐

后台-系统设置-扩展变量-手机广告位-内容页底部广告位3