linux网络服务综合项目
前期环境配置 #主要写了192.168.146.130的代码,131的配置代码和其一样
[root@server ~]# nmtui #通过图形化界面修改ens160的ip 192.168.146.130
[root@server ~]# hostnamectl set-hostname Server-Web #修改130主机名为Server-Web
[root@server ~]# vim /etc/hosts #修改hosts映射
127.0.0.1 Server-Web
192.168.146.130 Server-Web
192.168.146.131 Server-NFS-DNS
[root@server ~]# reboot 重启系统
[C:\~]$ ssh root@192.168.146.130
[root@Server-Web ~]# systemctl start firewalld #开启防火墙
[root@Server-Web ~]# systemctl enable firewalld
[root@client ~]# vim /etc/hosts
127.0.0.1 Server-Web
192.168.146.130 Server-Web
192.168.146.131 Server-NFS-DNS
[root@client ~]# reboot
[root@Server-Web ~]# setenforce 0 #130关闭selinux
[root@Server-Web ~]# getenforce
[root@Server-NFS-DNS ~]# setenforce 1 #131开启selinux
[root@Server-NFS-DNS ~]# getenforce
[root@Server-Web ~]# vim /etc/chrony.conf #校对网站填写阿里云
server ntp.aliyun.com iburst # 更改第三行
[root@Server-Web ~]# systemctl restart chronyd
[root@Server-Web ~]# chronyc sources -v 
#通过网络重新校对时间,使用第一个回应的网站的时间(↑)
[root@Server-Web ~]# timedatectl status #查看时间
[root@Server-Web ~]# ssh-keygen -t rsa #生成公私钥
[root@Server-Web ~]# ssh-copy-id 192.168.146.131 #将公私钥给131主机

[root@Server-Web ~]# ssh 192.168.146.131 #登录131查看是否能够ssh免密登录

DNS端同理

在https://cn.wordpress.org/官网下载博客软件压缩包并通过xftp从windows传输到DNS端根目录上(根目录往往会自带x权限便于执行)解压缩
[root@Server-NFS-DNS ~]# cd /
[root@Server-NFS-DNS /]# unzip wordpress-6.3.2-zh_CN.zip &> /dev/null
#因为解压文件过多,将其隐藏

配置nfs共享从而将DNS端的/wordpress目录共享给web端
[root@Server-NFS-DNS ~]# yum install rpcbind -y
[root@Server-NFS-DNS ~]# yum install nfs-utils -y
[root@Server-NFS-DNS ~]# vim /etc/exports
/wordpress 192.168.146.130(rw,sync,all_squash)
#允许客户端读写,并且数据同步写到服务器端的磁盘里(↑)
[root@Server-NFS-DNS ~]# chmod -Rf 777 /wordpress
#修改/wordpress所有人都有rwx权限并且不显示错误信息(↑)
#防火墙添加服务放行(↓)
[root@Server-NFS-DNS ~]# firewall-cmd --permanent --zone public --add-service=mountd
[root@Server-NFS-DNS ~]# firewall-cmd --permanent --zone public --add-service=rpc-bind
[root@Server-NFS-DNS ~]# firewall-cmd --permanent --zone public --add-service=nfs
[root@Server-NFS-DNS ~]# firewall-cmd --reload #重启防火墙服务
[root@Server-NFS-DNS ~]# systemctl restart rpcbind #启动服务
[root@Server-NFS-DNS ~]# systemctl restart nfs-server
[root@Server-NFS-DNS ~]# chcon -t httpd_sys_content_t /wordpress -Rv &> /dev/null
#设置selinux安全上下文并隐藏显示(因为会输出很多行内容)(↑)
[root@Server-Web ~]# yum install rpcbind -y &> /etc/null
[root@Server-Web ~]# echo $? #如果状态码为0代表安装成功
[root@Server-Web ~]# yum install nfs-utils -y &> /dev/null
[root@Server-Web ~]# echo $?
[root@Server-Web ~]# showmount -e 192.168.146.131 #查看nfs服务器共享的文件
[root@Server-Web ~]# mkdir /wp #创建要放置共享文件的目录
[root@Server-Web ~]# mount -t nfs 192.168.146.131:/wordpress /wp

#执行该处时被DNS端拒绝挂载,多次排错后发现是DNS端配置的命令systemctl restart rpcbind和nfs-server restart写成了start(↑)

[root@Server-Web ~]# firewall-cmd --permanent --zone public --add-service=http
#防火墙设置http服务放行(↑)
[root@Server-Web ~]# firewall-cmd --reload 重启服务
[root@Server-Web ~]# vim /etc/httpd/conf/httpd.conf # 编辑http配置文件
124 DocumentRoot "/wp" #修改第124和129行的内容
129 <Directory "/wp">
[root@Server-Web ~]# cd /wp
[root@Server-Web wp]# cp wp-config-sample.php wp-config.php # 根据模板拷贝配置文件
[root@Server-Web wp]# vim wp-config.php
#分别修改从23行开始往下的2个名字1个密码(↑)
23 #define( 'DB_NAME', 'database_name_here' );
24 define( 'DB_NAME', 'wordpress' ); #wordpress数据库名称
25
26 /** Database username */
27 #define( 'DB_USER', 'username_here' );
28 define( 'DB_USER', 'test1' ); #mysql数据库用户名
29
30 /** Database password */
31 #define( 'DB_PASSWORD', 'password_here' );
32 define( 'DB_PASSWORD', '123' ); #mysql数据库密码
[root@Server-Web ~]# systemctl start mariadb #执行时显示服务未找到
[root@Server-Web ~]# rpm -qa | grep -i mysql #发现是安装了mysql
[root@Server-Web ~]# yum remove mysql-common.x86_64 #删除后服务依旧显示未找到
[root@Server-Web ~]# yum install mariadb-server -y #发现是LAMP环境软件未安装
[root@Server-Web ~]# mysql #安装后启动mysql数据库
MariaDB [(none)]> create database wordpress; #创建数据库
MariaDB [(none)]> create user 'test1'@'localhost' identified by '123';
# 第一个' '为数据库账号,@后面的' '内容为数据库可以登录的地址,localhost意为只能本机登录。用户和密码与wordpress配置文件一样(↑)
MariaDB [(none)]> grant all on wordpress.* to 'test1'@'localhost'; #给用户授权
MariaDB [(none)]> exit
[root@Server-Web ~]# systemctl restart mariadb 重启数据库和http
[root@Server-Web ~]# systemctl start httpd
[root@Server-Web ~]# yum install php-mysqli -y #发现没有mysql扩展于是安装一下(↓)

#windows->浏览器输入网址192.168.146.130访问WordPress博客网站填写信息继续安装(↓)


[root@Server-NFS-DNS ~]# firewall-cmd --permanent --zone public --add-service=dns
[root@Server-NFS-DNS ~]# firewall-cmd --reload #防火墙放行dns服务并重启
[root@Server-NFS-DNS ~]# systemctl restart named
[root@Server-NFS-DNS ~]# vim /etc/named.conf
12 listen-on port 53 { any; }; 将127环回测试和只允许本机改成any任意主机(↓)
19 allow-query { any; };
zone "openlab.com" IN #将该文件内容清空并设置openlab.com
{
type master;
file "openlab.com.zone";
allow-update {none;};
};
[root@Server-NFS-DNS ~]# cd /var/named
[root@Server-NFS-DNS named]# cp -a named.localhost openlab.com.zone
[root@Server-NFS-DNS named]# vim openlab.com.zone #添加正向解析为web服务器
$TTL 1D
@ IN SOA openlab.com. admin.openlab.com (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS ns.openlab.com.
ns IN A 192.168.146.130
www IN A 192.168.146.130
bbs IN A 192.168.146.130
[root@Server-Web ~]# vim /etc/resolv.conf #修改web端DNS为192.168.146.131
# Generated by NetworkManager
nameserver 192.168.146.131
#最后windows访问www.openlab.com不能显示内容(↓)

#而web端可以通过fox浏览器访问www.openlab.com

相关文章:
linux网络服务综合项目
前期环境配置 #主要写了192.168.146.130的代码,131的配置代码和其一样 [rootserver ~]# nmtui #通过图形化界面修改ens160的ip 192.168.146.130 [rootserver ~]# hostnamectl set-hostname Server-Web #修改130主机名…...
每日一题(LeetCode)----数组--移除元素(三)
每日一题(LeetCode)----数组–移除元素(三) 1.题目([283. 移动零](https://leetcode.cn/problems/sqrtx/)) 给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。 请…...
AI:57-基于机器学习的番茄叶部病害图像识别
🚀 本文选自专栏:AI领域专栏 从基础到实践,深入了解算法、案例和最新趋势。无论你是初学者还是经验丰富的数据科学家,通过案例和项目实践,掌握核心概念和实用技能。每篇案例都包含代码实例,详细讲解供大家学习。 📌📌📌在这个漫长的过程,中途遇到了不少问题,但是…...
人工智能-深度学习计算:层和块
我们关注的是具有单一输出的线性模型。 在这里,整个模型只有一个输出。 注意,单个神经网络 (1)接受一些输入; (2)生成相应的标量输出; (3)具有一组相关 参数…...
Linux第一个小程序进度条
缓冲区 在写进度条程序之前我们需要介绍一下缓冲区,缓冲区有两种,输入和输出缓冲区,这里主要介绍输出缓冲区。在我们用C语言写代码时,输出一些信息,实际上是先输出到输出缓冲区里,然后才输出到我们的显…...
JavaEE平台技术——预备知识(Maven、Docker)
JavaEE平台技术——预备知识(Maven、Docker) 1. Maven2. Docker 在观看这个之前,大家请查阅前序内容。 😀JavaEE的渊源 😀😀JavaEE平台技术——预备知识(Web、Sevlet、Tomcat) 1. M…...
【ChatOCR】OCR+LLM定制化关键信息抽取(附开源大语言模型汇总整理)
目录 背景技术方案存在的问题及解决思路关键信息提取结果其他解决方案替换文心一言LangChain大型多模态模型(Large Multimodal Model, LMM) 开源大模型汇总LLaMA —— Meta 大语言模型Stanford Alpaca —— 指令调优的 LLaMA 模型Lit-LLaMA —— 基于 na…...
【位运算】XOR Construction—CF1895D
XOR Construction—CF1895D 参考文章 翻译 题目要求构造一个长度为 n n n 的数组 b b b,满足以下条件: 数组 b b b 中包含从 0 0 0 到 n − 1 n-1 n−1 的每个整数,且每个整数仅出现一次;对于 i i i 从 1 1 1 到 n − …...
解决Visual Studio Code 控制台中文乱码问题
C和CPP运行编码指定 "code-runner.executorMap": {"c": "cd $dir && gcc -fexec-charsetGBK $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt","cpp": "cd $dir && g -fexec-charsetGBK $…...
React Native自学笔记
系列文章目录 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 例如:第一章 Python 机器学习入门之pandas的使用 提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目…...
程序员笔记本电脑选 windows 还是 MAC
计算机选择是每个进入 IT 行业同学的第一个重要选择,那么你是怎么选择的呢? 选择操作系统(Windows还是macOS)取决于程序员的需求、偏好和工作流程。每个操作系统都有其优点和缺点,下面将分别讨论它们,以帮助…...
蓝桥杯每日一题2023.11.5
题目描述 方格分割 - 蓝桥云课 (lanqiao.cn) 题目分析 对于每个图我们可以从中间开始搜索,如果到达边界点就说明找到了一种对称的方法,我们可以直接对此进行答案记录每次进行回溯就会找到不同的图像,如果是一样的图像则算一种情况ÿ…...
多媒体应用设计师 2023年(含答案回忆版)
以下是小红书上的回忆版 软考考完疯狂回忆,多媒体应用设计师选择题 1.pattern 2.effective 3.merge 4.applications 5.graphic 6.udp 7.rtp 8.rtsp 9.10cm 10.永久 11…97 12.工作技术管理标准 13.管理型元数据 14.premiere 15.wave 16.500km/h 17.3M 18.44000 19.…...
[Machine Learning][Part 8]神经网络的学习训练过程
目录 训练过程 一、建立模型: 二、建立损失函数 J(w,b): 三、寻找最小损失函数的(w,b)组合 为什么需要激活函数 激活函数种类 二分法逻辑回归模型 线性回归模型 回归模型 训练过程 一、建立模型: 根据需求建立模型,从前面神经网络的…...
Git 内容学习
一、Git 的理解 Git是一个分布式版本控制系统(Distributed Version Control System,简称 DVCS),用于对项目源代码进行管理和跟踪变更。分为两种类型的仓库:本地仓库和远程仓库。 二、Git 的工作流程 详解如下&#x…...
Zookeeper3.7.1分布式安装部署
上传安装文件到linux系统上面 解压安装文件到安装目录 [zhangflink9wmwtivvjuibcd2e package]$ tar -zxvf apache-zookeeper-3.7.1-bin.tar.gz -C /opt/software/3. 修改解压文件名 [zhangflink9wmwtivvjuibcd2e software]$ mv apache-zookeeper-3.7.1-bin/ zookeeper-3.7…...
CSS必学:元素之间的空白与行内块的幽灵空白问题
作者:WangMin 格言:努力做好自己喜欢的每一件事 CSDN原创文章 博客地址 👉 WangMin 我们在开发的过程中,难免会出现一些难以预料的问题。那么其中,CSS空白现象就是非常常见的问题之一。虽然它已经被发现很久,但仍然有许多新手和经…...
C++类中对构造函数的重载
C类中对构造函数的重载 C 允许在同一作用域中的某个函数和运算符指定多个定义,分别称为函数重载和运算符重载。 重载声明是指一个与之前已经在该作用域内声明过的函数或方法具有相同名称的声明,但是它们的参数列表和定义(实现)不…...
QtC++与QLabel详解
介绍 QLabel 类是Qt中的一个用于显示文本或图像的控件类,通常用于用户界面中以提供静态文本或图片显示的功能。以下是对QLabel在Qt中的作用的详细解释: 文本和图像显示: QLabel 可以用来显示文本和图像。这使得它成为显示标签、标题、说明或…...
090基于web+springboot的中小企业设备管理系统
欢迎大家关注,一起好好学习,天天向上 文章目录 一项目简介技术介绍 二、功能组成三、效果图四、 文章目录 一项目简介 本中小企业设备管理系统管理员有个人中心,用户管理,员工管理,设备信息管理,配件信息管…...
UE5 学习系列(二)用户操作界面及介绍
这篇博客是 UE5 学习系列博客的第二篇,在第一篇的基础上展开这篇内容。博客参考的 B 站视频资料和第一篇的链接如下: 【Note】:如果你已经完成安装等操作,可以只执行第一篇博客中 2. 新建一个空白游戏项目 章节操作,重…...
AI-调查研究-01-正念冥想有用吗?对健康的影响及科学指南
点一下关注吧!!!非常感谢!!持续更新!!! 🚀 AI篇持续更新中!(长期更新) 目前2025年06月05日更新到: AI炼丹日志-28 - Aud…...
linux 下常用变更-8
1、删除普通用户 查询用户初始UID和GIDls -l /home/ ###家目录中查看UID cat /etc/group ###此文件查看GID删除用户1.编辑文件 /etc/passwd 找到对应的行,YW343:x:0:0::/home/YW343:/bin/bash 2.将标红的位置修改为用户对应初始UID和GID: YW3…...
现代密码学 | 椭圆曲线密码学—附py代码
Elliptic Curve Cryptography 椭圆曲线密码学(ECC)是一种基于有限域上椭圆曲线数学特性的公钥加密技术。其核心原理涉及椭圆曲线的代数性质、离散对数问题以及有限域上的运算。 椭圆曲线密码学是多种数字签名算法的基础,例如椭圆曲线数字签…...
【RockeMQ】第2节|RocketMQ快速实战以及核⼼概念详解(二)
升级Dledger高可用集群 一、主从架构的不足与Dledger的定位 主从架构缺陷 数据备份依赖Slave节点,但无自动故障转移能力,Master宕机后需人工切换,期间消息可能无法读取。Slave仅存储数据,无法主动升级为Master响应请求ÿ…...
Java入门学习详细版(一)
大家好,Java 学习是一个系统学习的过程,核心原则就是“理论 实践 坚持”,并且需循序渐进,不可过于着急,本篇文章推出的这份详细入门学习资料将带大家从零基础开始,逐步掌握 Java 的核心概念和编程技能。 …...
第 86 场周赛:矩阵中的幻方、钥匙和房间、将数组拆分成斐波那契序列、猜猜这个单词
Q1、[中等] 矩阵中的幻方 1、题目描述 3 x 3 的幻方是一个填充有 从 1 到 9 的不同数字的 3 x 3 矩阵,其中每行,每列以及两条对角线上的各数之和都相等。 给定一个由整数组成的row x col 的 grid,其中有多少个 3 3 的 “幻方” 子矩阵&am…...
【数据分析】R版IntelliGenes用于生物标志物发现的可解释机器学习
禁止商业或二改转载,仅供自学使用,侵权必究,如需截取部分内容请后台联系作者! 文章目录 介绍流程步骤1. 输入数据2. 特征选择3. 模型训练4. I-Genes 评分计算5. 输出结果 IntelliGenesR 安装包1. 特征选择2. 模型训练和评估3. I-Genes 评分计…...
CSS设置元素的宽度根据其内容自动调整
width: fit-content 是 CSS 中的一个属性值,用于设置元素的宽度根据其内容自动调整,确保宽度刚好容纳内容而不会超出。 效果对比 默认情况(width: auto): 块级元素(如 <div>)会占满父容器…...
面向无人机海岸带生态系统监测的语义分割基准数据集
描述:海岸带生态系统的监测是维护生态平衡和可持续发展的重要任务。语义分割技术在遥感影像中的应用为海岸带生态系统的精准监测提供了有效手段。然而,目前该领域仍面临一个挑战,即缺乏公开的专门面向海岸带生态系统的语义分割基准数据集。受…...
