LAMP——搭建基于Apache、wordpress、nfs、mysql、DNS的系统
一、部署架构

二、部署过程
1、在10.0.0.8和10.0.0.18服务器上安装apache服务
[17:10:06 root@centos8 ~]#yum -y install httpd
安装php服务
[18:59:12 root@centos8 html]#yum -y install php-fpm php-mysqlnd php-json php-xml
启动php服务
[19:15:54 root@centos8 html]#systemctl enable --now php-fpm
2、在10.0.0.28服务器上安装wordpress应用
下载:https://cn.wordpress.org/download/
解压安装wordpress
[17:49:24 root@centos8 ~]#unzip wordpress-5.7.2-zh_CN.zip
[17:49:01 root@centos8 ~]#mkdir /data/wordpress -p
[17:49:20 root@centos8 ~]#mv wordpress/* /data/wordpress/
设置管理账号www
[17:50:43 root@centos8 data]#useradd -u 80 -s /sbin/nologin -r www
[17:51:06 root@centos8 data]#id www
uid=80(www) gid=80(www) groups=80(www)
授权目录权限给www账号
[23:28:14 root@centos8 data]#chown -R www.www /data/wordpress/
3、在10.0.0.28服务器上安装NFS服务
10.0.0.8/18/28上安装软件包(web服务器及NFS均需安装该软件)
[18:00:09 root@centos8 ~]#yum -y install nfs-utils
10.0.0.28启动nfs-server服务
[18:09:21 root@centos8 data]#systemctl enable --now nfs-server
Created symlink /etc/systemd/system/multi-user.target.wants/nfs-server.service → /usr/lib/systemd/system/nfs-server.service.
10.0.0.28修改配置文件
[18:22:11 root@centos8 data]#cat /etc/exports
/data/wordpress 10.0.0.0/24(rw)
#重新加载配置文件
[18:22:05 root@centos8 data]#exportfs -r
#查看配置内容
[18:22:10 root@centos8 data]#exportfs -v
/data/wordpress
10.0.0.0/24(sync,wdelay,hide,no_subtree_check,sec=sys,rw,secure,root_squash,no_all_squash)
10.0.0.8/18挂载NFS目录
[18:30:00 root@centos8 html]#mount 10.0.0.28:/data/wordpress /var/www/html
配置永久挂载/etc/fstab
10.0.0.28:/data/wordpress /var/www/html nfs _netdev 0 0
其中_netdev必须设置,不然当服务器重启时,会因网络问题而启动失败。
4、在10.0.0.38服务器上安装mysql应用
[17:09:27 root@centos8 ~]#yum -y install mysql-server
#启动mysql服务并设置为开机启动
[17:16:39 root@centos8 ~]#systemctl enable --now mysqld
Created symlink /etc/systemd/system/multi-user.target.wants/mysqld.service → /usr/lib/systemd/system/mysqld.service.
创建管理wordpress应用的数据库和账号
mysql> create database wordpress;
Query OK, 1 row affected (0.01 sec)
mysql> create user wordpress@'10.0.0.%' identified by '123456';
Query OK, 0 rows affected (0.01 sec)
mysql> grant all on wordpress.* to wordpress@'10.0.0.%';
Query OK, 0 rows affected (0.01 sec
5、在10.0.0.48服务器上安装DNS服务
[17:09:10 root@centos8 ~]#yum -y install bind
注释/etc/named.conf以下两行

在/etc/named.rfc1912.zones里新增:

配置/var/named/lybj.org.zone:
[22:10:04 root@centos8 ~]#cat /var/named/lybj.org.zone
$TTL 1D
@ IN SOA ns1 admin ( 1 1H 10M 1W 3H )
ns ns1
ns1 A 10.0.0.48
www A 10.0.0.8
www A 10.0.0.18
启动DNS服务
[22:10:00 root@centos8 ~]#systemctl enable --now named
6、功能验证
使用windows机器验证,需配置Vnet8的Ipv4DNS地址

使用linux机器验证,在网卡配置添加DNS地址
[22:50:00 root@centos8 ~]#cat /etc/sysconfig/network-scripts/ifcfg-eth0
···
DNS3=10.0.0.48
linux机器验证:

页面验证,访问www.lybj.org:

配置好数据库信息,参考步骤4。发布文章,验证成功:

至此,整个架构搭建完毕。
LAMP——搭建基于Apache、wordpress、nfs、mysql、DNS的系统的更多相关文章
- 生产环境LAMP搭建 - 基于 fastcgi
生产环境LAMP搭建 - 基于 fastcgi 由于在module模式,php只是已http的模块形式存在,无形中加重了http的服务负载,通常在企业架构中,使用fastcgi的模式,将所有的服务都设 ...
- Linux搭建基于Apache的HTTP服务器
Linux搭建基于Apache的HTTP服务器 实验目标: 通过本实验掌握基于Linux的WWW服务器搭建. 实验步骤: 1.安装http服务 2.防火墙放通http服务 3.编辑测试网页 4.开 ...
- Ubuntu16.04环境下搭建基于三台主机的mysql galera cluster集群(实测有效)
(注意: (1)文中红色字体部分不一定需要操作 (2)由于word文档编辑的原因,实际操作时部分命令需要手动输入!!直接复制粘贴会提示错误!! ) 一 搭建环境: 1 Ubuntu16.04版本(系 ...
- [IDS]CentOS6.6下搭建基于snort+barnyard2+base的入侵检测系统,超详细!!!
最详细的CentOS6.6下搭建基于snort+barnyard2+base的入侵检测系统免责声明一.如果因为使用本文档照成损失(系统崩溃.数据丢失等),作者不承担任何责任.二.本文档只是个人使用本文 ...
- 实践:搭建基于Load Balancer的MySql Cluster
服务器规划: 整套系统全部在rhel5u1 server 64位版本下,由基于xen的虚拟机搭建,其中集群管理节点*2.SQL节点*2.数据节点*4.Web服务节点*2组成,其中数据节点做成2个组,每 ...
- docker搭建基于percona-xtradb-cluster方案的mysql集群
一.部署环境 序号 hostname ip 备注 1 manager107 10.0.3.107 centos7;3.10.0-957.1.3.el7.x86_64 2 worker68 10.0.3 ...
- SpringBoot搭建基于Apache Shiro的权限管理功能
Shiro 是什么 Apache Shiro是一个强大易用的Java安全框架,提供了认证.授权.加密和会话管理等功能: 认证 - 用户身份识别,常被称为用户“登录”: 授权 - 访问控制: 密码加密 ...
- SpringBoot搭建基于Apache Shiro+Redis的分布式Session共享功能
我们在上一遍文档中已经完成了Shiro验证功能.(http://www.cnblogs.com/nbfujx/p/7773789.html),在此基础上我们将完成分布式Session共享功能. Red ...
- 【Python+C#】手把手搭建基于Hugging Face模型的离线翻译系统,并通过C#代码进行访问
前言:目前翻译都是在线的,要在C#开发的程序上做一个可以实时翻译的功能,好像不是那么好做.而且大多数处于局域网内,所以访问在线的api也显得比较尴尬.于是,就有了以下这篇文章,自己搭建一套简单的离线翻 ...
随机推荐
- sed -i 's/Search_String/Replacement_String/g' Input_File sed详细手册
本文列出的十五个例子可以帮助你掌握 sed 命令.如果要使用 sed 命令删除文件中的行,去下面的文章.注意:由于这是一篇演示文章,我们使用不带 -i 选项的 sed 命令,该选项会在 Linux 终 ...
- Docker Swarm(八)滚动更新、回滚服务
滚动更新.回滚服务 默认情况下, swarm一次只更新一个副本,并且两个副本之间没有等待时间,我们可以通过: # 定义并行更新的副本数量--update-parallelism# 定义滚动更新的时间间 ...
- :整数 跳转到该行 Vim中常用的命令
:set nu 显示行号 :set nonu 不显示行号 :命令 执行该命令 :整数 跳转到该行 :s/one/two 将当前光标所在行的第一个one替换成two :s/one/two/g 将当前光标 ...
- Rust模块化
Rust模块化 模块化有助于代码的管理和层次逻辑的清晰 Rust模块化有多种方式: 1.嵌套模块 嵌套模块就是直接在要使用模块的文件中声明模块 mod food{//声明模块 pub struct C ...
- Ansible_使用文件模块将修改文件复制到受管主机
一.描述常用文件模块 1.常用文件模块 模块名称 模块说明 blockinfile 插入.更新或删除由可自定义标记线包围的多行文本块 copy 将文件从本地或远程计算机复制到受管主机上的某个位置.类似 ...
- 016.Python闭包函数以及locals和globals
一 闭包函数 内函数使用了外函数的局部变量,并且外函数把内函数返回出来的过程叫做闭包,这个内函数叫做闭包函数 1.1 闭包函数语法 def outer(): a = 5 def inner(): pr ...
- python基础之面向对象(二)(封装、继承、多态)
一.封装 (1)封装是面向对象的一大特点 (2)面向对象编程的第一步--将属性和方法封装到一个抽象的类当中 (3)外界使用类创建对象,然后让对象调用方法 (4)对象方法的细节都被封装在类的内部 1.案 ...
- IT菜鸟之VTP应用项目
项目拓扑 项目要求 PC0和PC2能通信,PC1和PC3能通信,其余不能通信. 项目分析 可以通过vlan来实现相同网段不能通信:而相同vlan可以通信,不同vlan不能通信:同时需要用到trunk封 ...
- 编写程序,计算当n=10000,20000,30000...100000时,π的值.求π的近似公式 π=4*(1-1/3+1/5-1/7+1/9-1/11+1/13-...+1/(2n-1)-1/(2n+1))
该程序是求的 π 近似值,所以随着 i 的增大,值会无线接近于 3.1415926... 代码示例 : package judgment;/** * 编写程序,计算当n=10000,20000,300 ...
- DM8_Linux详细安装步骤
(从虚拟机配置讲起,有基础的可以直接看二,谢谢) 一.虚拟机的安装和配置 软件:virtualbox 系统:centos7 工具:Xshell 官网下载centos7,使用virtualbox安装ce ...