当前位置: 首页 > news >正文

基于三台主机搭建 Web 服务环境:Nginx、NFS 与 DNS 配置全流程

基于三台主机搭建 Web 服务环境:Nginx、NFS 与 DNS 配置全流程

一、引言

在当今数字化的时代,搭建一个稳定、高效的 Web 服务环境是许多开发者和运维人员的常见需求。本文将详细介绍如何利用三台主机搭建一个包含 Nginx、NFS 和 DNS 服务的 Web 环境,包括各服务的配置步骤以及最后的测试环节,希望能对大家有所帮助。

二、环境准备

本次搭建涉及三台主机,各主机的信息如下:

主机角色IP 地址主机名
Web 端192.168.2.130web
DNS 端192.168.2.131dns
NFS 和防火墙端192.168.2.132nfs_firewall

三、NFS 和防火墙端(nfs_firewall)配置

1. 设置主机名并启动防火墙

[root@nfs_firewall ~]# hostnamectl set-hostname nfs_firewall
[root@nfs_firewall ~]# systemctl start firewalld

2. 安装 NFS 服务

[root@nfs_firewall ~]# yum install nfs-utils -y

3. 设置共享目录权限

[root@nfs_firewall ~]# ls /
afs  boot  etc   lib    lost+found  mnt  proc  run   sczl  sys  usr
bin  dev   home  lib64  media       opt  root  sbin  srv   tmp  var
[root@nfs_firewall ~]# chmod -R 777 /sczl

4. 配置 NFS 共享

[root@nfs_firewall ~]# vim /etc/exports
/sczl   192.168.2.131/24(rw,sync,all_squash)

5. 启动 NFS 相关服务

[root@nfs_firewall ~]# systemctl start rpcbind
[root@nfs_firewall ~]# systemctl start nfs-server

6. 配置防火墙规则

[root@nfs_firewall ~]# firewall-cmd --permanent --zone=public --add-service=http
success
[root@nfs_firewall ~]# firewall-cmd --permanent --zone=public --add-service=nfs
success
[root@nfs_firewall ~]# firewall-cmd --permanent --zone=public --add-service=rpc-bind
success
[root@nfs_firewall ~]# firewall-cmd --permanent --zone=public --add-service=mountd
success
[root@nfs_firewall ~]# firewall-cmd --permanent --zone=public --add-service=dns
success
[root@nfs_firewall ~]# firewall-cmd --reload
success

四、Nginx 端(web)配置

1. 安装 Nginx 和 NFS 客户端

[root@web ~]# yum install nginx -y
[root@web ~]# yum install nfs-utils -y

2. 配置 Nginx

[root@web ~]# vim /etc/nginx/nginx.conf

在配置文件中添加以下内容:

    server {listen       80;listen       [::]:80;server_name  _;root         /www;}

3. 创建挂载目录并挂载 NFS 共享

[root@web ~]# mkdir /www
[root@web ~]# mount -t nfs 192.168.2.132:/sczl /www
[root@web ~]# cd /www
[root@web www]# ls
css  dingban.mp4  img  index.html  js  temp

4. 配置 DNS 并启动 Nginx

[root@web ~]# nmcli c modify ens32 ipv4.dns 192.168.2.131
[root@web ~]# nmcli c reload
[root@web ~]# nmcli c up ens32
连接已成功激活(D-Bus 活动路径:/org/freedesktop/NetworkManager/ActiveConnection/2)
[root@web ~]# systemctl start nginx

五、DNS 端(dns)配置

1. 配置 named.conf

[root@dns ~]# vim /etc/named.conf 

在配置文件中添加以下内容:

options {listen-on port 53 { any; };listen-on-v6 port 53 { ::1; };directory       "/var/named";dump-file       "/var/named/data/cache_dump.db";statistics-file "/var/named/data/named_stats.txt";memstatistics-file "/var/named/data/named_mem_stats.txt";secroots-file   "/var/named/data/named.secroots";recursing-file  "/var/named/data/named.recursing";allow-query     { any; };
}

2. 配置 named.rfc1912.zones

[root@dns ~]# vim /etc/named.rfc1912.zones

添加以下内容:

zone "sczl.com" IN {type master;file "sczl.com.zone";allow-update { none; };
};

3. 创建并配置区域文件

[root@dns ~]# cd /var/named/
[root@dns named]# ls
data     named.ca     named.localhost  slaves
dynamic  named.empty  named.loopback
[root@dns named]# cp -a named.localhost sczl.com.zone
[root@dns named]# vim sczl.com.zone 

添加以下内容:

$TTL 1D
@       IN SOA  ns.sczl.com. andy.qq.com. (0       ; serial1D      ; refresh1H      ; retry1W      ; expire3H )    ; minimumIN      NS      ns.sczl.com.
ns.sczl.com.    IN      A       192.168.2.131
www.sczl.com.   IN      A       192.168.2.130

4. 启动 DNS 服务

[root@dns named]# systemctl start named

六、测试

1. 使用 curl 测试 Web 服务

[root@web ~]# curl www.sczl.com
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>FullPage</title>

在这里插入图片描述

2. 使用 nslookup 测试 DNS 解析

[root@web ~]# nslookup www.sczl.com
Server:		192.168.2.131
Address:	192.168.2.131#53Name:	www.sczl.com
Address: 192.168.2.130

在这里插入图片描述

在 Windows 系统中修改 DNS 服务器地址

如果你想在 Windows 系统中使用 Linux 上搭建的 DNS 服务器(地址为 192.168.2.131),可以按照以下步骤操作:

  1. 打开网络连接设置
    • 右键点击任务栏上的网络图标,选择 “打开网络和 Internet 设置”。
    • 在设置窗口中,点击 “更改适配器选项”。
  2. 选择网络连接
    • 找到你正在使用的网络连接(如以太网或 Wi-Fi),右键点击该连接,选择 “属性”。
  3. 配置 IPv4 DNS 服务器
    • 在 “网络连接属性” 窗口中,选中 “Internet 协议版本 4 (TCP/IPv4)”,然后点击 “属性” 按钮。
    • 在弹出的 “Internet 协议版本 4 (TCP/IPv4) 属性” 窗口中,选择 “使用下面的 DNS 服务器地址”。
    • 在 “首选 DNS 服务器” 中输入 Linux 上搭建的 DNS 服务器地址:192.168.2.131。

在这里插入图片描述

七、总结

通过以上步骤,我们成功利用三台主机搭建了一个包含 Nginx、NFS 和 DNS 服务的 Web 环境。在实际应用中,我们可以根据需要对各个服务进行进一步的优化和扩展。希望本文能为你提供一些帮助,让你在搭建 Web 服务环境时更加得心应手

http://www.lryc.cn/news/604044.html

相关文章:

  • 机械学习--线性回归---三个小案例
  • Kun_Tools(全能文档工具)V0.4.6 便携版
  • 2025年中科院与JCR期刊分区深度对比(第一期):TON中科院分区3区不变,JCR分区升至Q1;TOSEM重回中科院1区!
  • I2C 与 SMBus:同根同源,各有千秋
  • 学习Python中Selenium模块的基本用法(3:下载浏览器驱动续)
  • 美国股市高频tick级分时交易数据解码与订单簿及交易指令分析
  • 使用 Spring AI Alibaba MCP 结合 Nacos 实现企业级智能体应用
  • win10 环境删除文件提示文件被使用无法删除怎么办?
  • Aura_P41_PXX GameplayEffect
  • iOS仿写 —— 计算器
  • Python包架构设计与模式应用:构建可扩展的企业级组件
  • 车载诊断架构 --- 关于诊断时间参数P4的浅析
  • ABP VNext + GraphQL Federation:跨微服务联合 Schema 分层
  • 落霞归雁思维框架应用(十一) ——开发如何选语言与架构:把“技术洪流”修成顺势河道
  • 【Mac版】Linux 入门命令行快捷键+联想记忆
  • Doris中文检索效果调优
  • vulhub-Breakout靶机
  • 减速机:自动化生产线的“精密传动心脏”
  • 网络原理--HTTPHTTPS
  • SQL注入SQLi-LABS 靶场less26-30详细通关攻略
  • OpenCV 学习探秘之三:从图像读取到特征识别,再到机器学习等函数接口的全面实战应用与解析
  • 【硬件-笔试面试题】硬件/电子工程师,笔试面试题-44,(知识点:三极管,PN结,正偏反偏判断,晶体管)
  • 通讯中为什么要用 0Hermitian 对称 *只使用“正频率”子载波,负频率部分通过对称性自动生成,从而保证时域信号是实值
  • 记一次导出pdf表单引发的问题
  • 【RAG搭建Agent应用实战】基于检索增强生成(RAG)搭建特定场景Agent应用
  • 验证pyspark提交参数指定环境变量生效
  • HbuilderX开发小程序
  • Java面试宝典:MySQL8新特性底层原理
  • 【nerf处理视频数据】Instant-NGP项目NeRF模型训练数据集准备指南
  • React--》规划React组件库编码规范与标准 — Button篇