云计算学习笔记


云计算学习笔记

2023—2024上学期


提示:以下是本篇文章正文内容,下面案例可供参考

一、Linux的基础知识

!文件及目录 ‘显示类’命令

相对/绝对路径的概念

(1)绝对路径:从“/”根目录开始的路径,如:/usr、/usr/ local/等,/usr/local/etc就是绝对路径,它指向系统中一个绝对的位置。
(2)相对路径:路径的写法不是由“/”写起,相对路径的起点为当前目录,如果现在位于/usr目录,那么相对路径local/etc所指示的位置为/usr/local/etc,也就是说相对路径所指示的位置,除了相对路径本身,还受到当前位置的影响。

特殊符号表示的路径

特殊符号特殊符号所示的目录含义
~代表当前登录用户的主目录
~用户名表示切换至指定用户的主目录
-代表上次所在目录
.代表当前目录
代表上级目录

如果只输入cd,未指定目标目录名,则返回到当前用户的主目录,等同于cd~

1.显示当前目录:pwd

显示当前工作目录,以绝对路径的形式显示

[root@localhost ~]# pwd                   //显示当前目录
/root
[root@localhost ~]#

2.切换目录:cd

用于切换当前目录,它的参数是要切换到的目录的路径,可以是绝对路径,也可以是相对路径


cd	[绝对路径或相对路径]

1.	cd /root/Docements # 切换到目录/root/Docements  
2.	cd ./path          # 切换到当前目录下的path目录中,“.”表示当前目录    
3.	cd ../path         # 切换到上层目录中的path目录中,“..”表示上一层目录  

3.查看文件与目录:ls


ls	[选项]	目录或文件名

1.	-l :列出长数据串,包含文件的属性与权限数据等  
2.	-a :列出全部的文件,连同隐藏文件(开头为.的文件)一起列出来(常用)  
3.	-d :仅列出目录本身,而不是列出目录的文件数据  
4.	-h :将文件容量以较易读的方式(GB,kB等)列出来  
5.	-R :连同子目录的内容一起列出(递归列出),等于该目录下的所有文件都会显示出来  
注:这些参数也可以组合使用,下面举两个例子:
1.	ls -l #以长数据串的形式列出当前目录下的数据文件和目录  
2.	ls -lR #以长数据串的形式列出当前目录下的所有文件  

4.查看文档内容:cat

该命令用于查看文本文件的内容,后接要查看的文件名,通常可用管道与more和less一起使用,从而可以一页页地查看数据。

cat	[选项]	文件名

1.	cat text | less # 查看text文件中的内容  
2.	# 注:这条命令也可以使用less text来代替  

5.将显示内容输出到屏幕:echo

echo命令非常简单,命令的输出内容如果没有特殊含义,则原内容输出到屏幕;如果输出内容有特殊含义,则输出打印其含义


echo  [选项]	[输出内容]

-n	取消输出后行末的换行符号(内容输出后不换行)
-e	支持反斜线控制的字符转换

例如:
[root@localhost ~]# echo  -en  "hello welcome\n"   //换行输出
hello welcome
[root@localhost ~]# echo  –en  "1 2 3\n"           //整行换行输出
1 2 3
[root@localhost ~]# echo  -en  "1\n2\n3\n"         //每个字符换行输出
1
2
3
[root@localhost ~]# echo  -n  aaa            //不加引号,不换行输出
aaa[root@localhost ~]# echo  -n  123   
123[root@localhost ~]#
 echo命令也可以把显示输出的内容输入到一个文件中,命令如下:
[root@localhost ~]# echo  "hello everyone welcome to here">welcome.txt
[root@localhost ~]# echo  "hello everyone">>welcome.txt   
[root@localhost ~]# cat welcome.txt 
hello everyone welcome to here
hello everyone
[root@localhost ~]#

!文件及目录 ‘操作类’命令

1.创建文件:touch

touch命令可以用来创建文件或用来修改文件的存取时间,如果指定的文件不存在,则会生成一个空文件


 touch	[选项]	目录或文件名
 
-a	 只把文件存取时间改为当前时间
-d	 把文件的存取/修改时间格式改为:yyyymmdd
-m	 只把文件的修改时间改为当前时间

例如:
[root@localhost mnt]# touch  file01.txt                     //创建一个文件
[root@localhost mnt]# touch  file02.txt  file03.txt  file04.txt  //创建多个文件
[root@localhost mnt]# touch * //把当前目录下所有文件的存取和修改时间改为当前时间 

2.创建目录:mkdir

建立新目录的命令是mkdir,该命令创建指定的目录名,要求创建的用户在当前目录中具有写权限,并且指定的目录名不能是当前目录中已有的目录,目录可以是绝对路径,也可以是相对路径


 mkdir	[选项]	目录名

-p	建立目录时,递归创建,如果父目录不存在,则此时可以与子目录一起建立,也就是可以实现一次建立多个层次的目录
-m	给予建立的目录设定权限,默认权限是:drwxr-xr-x
-v	输入目录创建的详细信息

例如:
[root@localhost mnt]# mkdir -p /mnt/user03/a01  /mnt/user03/a02
                       //在user03目录下,同时创建目录a01和目录a02
[root@localhost mnt]# ls  –l  /mnt/user03
总用量 0
drwxr-xr-x. 2 root root 6 625 16:35 a01
drwxr-xr-x. 2 root root 6 625 16:43 a02

3.删除目录:rmdir

rmdir是常用的命令,该命令的功能是删除空目录,一个目录被删除之前必须是空的.


rmdir	[选项]	目录名

-p	递归删除目录,当子目录删除后其父目录为空时,也一同被删除。如果整个路径被删除或者由于某种原因保留部分路径,则系统在标准输出上显示相应的信息
-v	显示指令执行过程

4.删除文件或目录:rm

rm既可以删除一个目录中的一个文件或多个文件或目录,也可以将某个目录及其下的所有文件及子目录均删除


 rm	[选项]	目录或文件名

-f	强制删除,删除文件或目录时不提示用户
-i	在删除前会询问用户是否操作
-r	删除某个目录及其中的所有的文件和子目录
-d	删除空文件目录
-v	显示指令执行过程

[root@localhost ~]# rm  -r  -f  /mnt/*         //强制删除目录下所有文件和目录

5.复制:cp

该命令用于复制文件,copy之意,它还可以把多个文件一次性地复制到一个目录下


cp	[选项]	源目录或文件名 目标目录或文件名

1.	-a :将文件的特性一起复制  
2.	-p :连同文件的属性一起复制,而非使用默认方式,与-a相似,常用于备份  
3.	-i :若目标文件已经存在时,在覆盖时会先询问操作的进行  
4.	-r :递归持续复制,用于目录的复制行为  
5.	-u :目标文件与源文件有差异时才会复制  

#例如 :
6.	cp -a file1 file2 #连同文件的所有特性把文件file1复制成文件file2  
7.	cp file1 file2 file3 dir #把文件file1、file2、file3复制到目录dir中  

6.移动文件/目录:mv


mv	[选项]	源目录或文件名 目标目录或文件名

1.	-f :force强制的意思,如果目标文件已经存在,不会询问而直接覆盖  
2.	-i :若目标文件已经存在,就会询问是否覆盖  
3.	-u :若目标文件已经存在,且比目标文件新,才会更新  

注:该命令可以把一个文件或多个文件一次移动一个文件夹中,但是最后一个目标文件一定要是“目录”。
例如:
5.	mv file1 file2 file3 dir # 把文件file1、file2、file3移动到目录dir中  
6.	mv file1 file2 # 把文件file1重命名为file2  

7.查找:find


find  [路径]  [匹配表达式]  [-exec command]
 
3.	# 与时间有关的参数:  
4.	-mtime n : n为数字,意思为在n天之前的“一天内”被更改过的文件;  
5.	-mtime +n : 列出在n天之前(不含n天本身)被更改过的文件名;  
6.	-mtime -n : 列出在n天之内(含n天本身)被更改过的文件名;  
7.	-newer file : 列出比file还要新的文件名  
8.	# 例如:  
9.	find /root -mtime 0 # 在当前目录下查找今天之内有改动的文件  
10.	  
11.	# 与用户或用户组名有关的参数:  
12.	-user name : 列出文件所有者为name的文件  
13.	-group name : 列出文件所属用户组为name的文件  
14.	-uid n : 列出文件所有者为用户ID为n的文件  
15.	-gid n : 列出文件所属用户组为用户组ID为n的文件  
16.	# 例如:  
17.	find /home/ljianhui -user ljianhui # 在目录/home/ljianhui中找出所有者为ljianhui的文件  
18.	  
19.	# 与文件权限及名称有关的参数:  
20.	-name filename :找出文件名为filename的文件  
21.	-size [+-]SIZE :找出比SIZE还要大(+)或小(-)的文件  
22.	-tpye TYPE :查找文件的类型为TYPE的文件,TYPE的值主要有:一般文件(f)、设备文件(b、c)、  
23.	             目录(d)、连接文件(l)、socket(s)、FIFO管道文件(p);  
24.	-perm mode :查找文件权限刚好等于mode的文件,mode用数字表示,如075525.	-perm -mode :查找文件权限必须要全部包括mode权限的文件,mode用数字表示  
26.	-perm +mode :查找文件权限包含任一mode的权限的文件,mode用数字表示  
# 例如:  
28.	find / -name passwd # 查找文件名为passwd的文件  
29.	find . -perm 0755 # 查找当前目录中文件权限的0755的文件  
30.	find . -size +12k # 查找当前目录中大于12KB的文件,注意c表示byte  


8.解压缩:tar

该命令用于对文件进行打包,默认情况并不会压缩,如果指定了相应的参数,它还会调用相应的压缩程序(如gzip和bzip等)进行压缩和解压。它的常用参数如下:


tar	[选项]	文件目录列表

1.	-c :新建打包文件  
2.	-t :查看打包文件的内容含有哪些文件名  
3.	-x :解打包或解压缩的功能,可以搭配-C(大写)指定解压的目录,注意-c,-t,-x不能同时出现在同一条命令中  
4.	-j :通过bzip2的支持进行压缩/解压缩  
5.	-z :通过gzip的支持进行压缩/解压缩  
6.	-v :在压缩/解压缩过程中,将正在处理的文件名显示出来  
7.	-f filename :filename为要处理的文件  
8.	-C dir :指定压缩/解压缩的目录dir  

#上面的解说可以已经让你晕过去了,但是通常我们只需要记住下面三条命令即可:
10.	压缩:tar -jcv -f filename.tar.bz2 要被处理的文件或目录名称  
11.	查询:tar -jtv -f filename.tar.bz2  
12.	解压:tar -jxv -f filename.tar.bz2 -C 欲解压缩的目录  
注:文件名并不定要以后缀tar.bz2结尾,这里主要是为了说明使用的压缩程序为bzip2

9.查看文件或目录容量的大小:du


du	[选项]	文件或目录

-a	为每个指定文件显示磁盘使用情况,或者为目录中每个文件显示各自磁盘使用情况
-b	显示目录或文件大小时,以byte为单位
-c	除了显示目录或文件的大小外,同时也显示所有目录或文件的总和
-D	显示指定符号连接的源文件大小
-h	以K,M,G为单位,提高信息的可读性
-H	与-h参数相同,但是K,M,G是以1000为换算单位,而不是以1024为换算单位
-l	重复计算硬件连接的文件
-L	显示选项中所指定符号连接的源文件大小
-s	仅显示总计,即当前目录容量的大小
-S	显示每个目录的大小时,并不含其子目录的大小
-x	以一开始处理时的文件系统为准,若遇上其它不同的文件系统目录则略过

例如
[root@localhost /]# du  –hs  /boot        //仅显示总计,即当前目录的容量的大小
147M    /boot

10.改变文件的权限:chmod


	chmod [-R] xyz 文件或目录  

	-R:进行递归的持续更改,即连同子目录下的所有文件都会更改  
同时,chmod还可以使用u(user)、g(group)、o(other)、a(all)和+(加入)、-(删除)、=(设置)跟rwx搭配来对文件的权限进行更改。

# 例如:  
	chmod 0755 file # 把file的文件权限改变为-rxwr-xr-x  
    chmod g+w file # 向file的文件权限中加入用户组可写权限  

11.查找文件中包含指定字符串的行:grep

grep是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来,在grep命令中,如果要查找的字符串中带有空格,可以用单引号或双引号


grep  [选项]  [正则表达式]  文件名

-a	将 binary 文件以 text 文件的方式搜寻数据
-c	对匹配的行计数
-i	忽略大小写的不同,所以大小写视为相同
-l	只显示包含匹配模式的文件名
-n	每个匹配行只按照相对的行号显示
-v	反向选择,列出不匹配的行

例如:

使用grep命令查找文件位置时,执行以下命令:
[root@localhost ~]# grep  “root”  /etc/passwd
root:x:0:0:root:/root:/bin/bash
operator:x:11:0:operator:/root:/sbin/nologin
csg:x:1000:1000:root:/home/csg:/bin/bash
[root@localhost ~]# grep  -il  “root”  /etc/passwd
/etc/passwd
[root@localhost ~]#
grep与find命令的差别在于grep是在文件中搜索满足条件的行,而find是在指定目录下根据文件的相关信息查找满足指定条件的文件。

3.硬链接与软件链接

硬链接: ln

[root@localhost ~]# touch  test01.txt
[root@localhost ~]# ln  test01.txt  test02.txt

使用ln命令建立硬链接。给源文件test01.txt建立一个硬链接test02.txt,这时test02.txt可以看作是test01.txt的别名文件,它和text01.txt不分主次,这两个文件都同时指向硬盘中相同位置上的同一个文件,对test01.tx内容进行修改,在硬链接文件test02.tx中会同时显示这些修改,实质上是同一个文件的两个不同的名字,只能给文件建立硬链接,不能给目录建立硬链接

硬链接的特点如下:
1)硬链接以文件副本的形式存在,但不占用实际空间。
2)不允许给目录创建硬链接。
3)硬链接只能在同一文件系统中创建。
4)对源文件进行修改时硬链接文件会同步修改

软链接: ln -s
软链接的特点如下:
1)软链接以路径的形式存在,类似于Windows操作系统中的快捷方式。
2)软链接可以跨文件系统,而硬链接不可以。
3)软链接可以对一个不存在的文件名进行链接。
4)软链接可以对目录进行链接。

4.通配符

通配符功能说明
*匹配任何字符和任何数目的字符组合
匹配任何单个字符
[]匹配任何包含在括号里的单个字符

二、redhat的注册

红帽 8 安装教程博客推荐:https://blog.csdn.net/low5252/article/details/101035853
1.官网注册账号并订阅: https://developers.redhat.com/(官网地址)
2.在服务器上登录账号进行订阅:
subscription-manager register --username=账户名 --password=密码 --auto-attach

三、网络管理

1、基础知识

1.虚拟机的三种网络模式

Linux三种网络配置的区别
NAT模式:虚拟机借助物理机进行路由器联网
桥接模式:虚拟机直接连接路由器,与物理机是对等地位
仅主机模式:不能联网,只能 ping 通虚拟机

详细说明:
1. 桥接模式相当于把虚拟机变成一台完全独立的计算机,会占用局域网本网段的一个IP地址,并且可以和网段内其他终端进行通信,相互访问。(虚拟机要连接打印机,请使用桥接模式!)
2. NAT模式与外界通话需要经过物理机(的NAT转换),不会多占一个局域网IP,默认情况下外部终端也无法直接访问虚拟机。
3. 仅主机模式不能上网,互联网局域网都不行,只能与物理机对话。

2、配置网卡的几种方式

1.网卡配置文件(每个最后的文件的文件名可能有所不同):ls /etc/sysconfig/network-scripts/ifcfg-ens160
2.图形化配置工具:和window一样点击Linux桌面窗口上的图标就能进行操作,很简单
3.nmtui伪图形配置工具(依赖NetworkManager服务):该命令会进入伪图形界面>然后选择编辑Edit xxx的选项>选择Ethernet
4.nmcli命令行
注意:红帽8及其centos8以后的版本无法通过配置网卡文件来更改网络

检查网络管理服务配置和状态:systemctl status NetworkManager

3、常用的DNS服务器IP

114DNS公众版 主用DNS:114.114.114.114 备用DNS:114.114.115.115 (纯净无劫持,速度还不错,多网通用)

114DNS安全版 主用DNS:114.114.114.119 备用DNS:114.114.115.119 (拦截部分钓鱼木马网站,多网通用)

AliDNS 主用DNS:223.5.5.5 备用DNS:223.6.6.6(阿里巴巴公共DNS)

腾讯DNS(DNSPOD)主用DNS:119.29.29.29 备用:182.254.116.116

2、配置网络

步骤:
1.添加网络IP信息
2.将网络更改为此新建连接:nmcli c up ens160_30sta
3.重启网络服务 service network restart

1.配置动态IP

nmcli c add type ethernet con-name ens160_30sta ifname ens160 ipv4.method auto  #添加动态IP

注释:
添加 类型为ethernet 连接名是ens160_30sata	设备是ens160	ipv4连接方式为自动

2.配置静态IP

nmcli c add type ethernet con-name ens160_30sta ifname ens160 ipv4.method manual ipv4.address 192.168.232.21/24 ipv4.gateway 192.168.232.2 ipv4.dns 114.114.114.114 autoconnect n

3、网络配置的相关代码

1.网卡的配置代码
nmcli d status	               # 网卡状态列表
nmcli d show		           # 显示网卡详情
nmcli d show ens160	          # 筛选查看具体网卡详情
nmcli d show 网卡名称          # 显示此网卡的详情
nmcli d disconnect ens160	  # 断开网卡连接
nmcli d connect ens160	     # 连接网卡
2.网卡连接
nmcli c show	            # 展示连接对象详情
nmcli c up ens160	        # 激活网卡连接
nmcli c up ens160_c1	    # 激活连接
nmcli d show ens160_c1	    # 显示连接详情
nmcli c delete  连接名称     # 删除连接
nmcli c modify 连接名称      # 修改连接参数(改哪个参数就写那个参数)

四、软件安装

1、软件包的分类

源码包(如C语言源码文件)
二进制包 经过编译的源码包
(:
.apk  安卓二进制包
.exe/.msi  Windows安装包
.RPM     radhat 安装包
RPM包镜像文件下载地址:http://rpmfind.net
RPM包命名规则:   名称,版本号,发行号,支持的操作系统版本,主机平台
)
Linux三种常见软件包的格式:rpm、deb、tar.gz

软件包搜索和下载网站:https://www.rpmfind.net/

2、从网络中下载文件:wget

语法:
wget 目标软件/网页的网址
(找到源文件右键复制链接)

3、RPM安装

注意:自己独立安装并解决依赖问题(有些时候可能比较繁琐)

rpm的使用

命令 解释
rpm -ivh 包名 安装 rpm 包
rpm -e 包名 卸载 rpm 包

① 首先查看自己的系统版本
$ uname-a
② 下载并安装软件包
$ rpm -ivh软件包的下载地址
③ 查询
$ rpm -qa| grep 软件包名
④ 卸载
$ rpm -e 软件包名

3、YUM安装

可自动解决依赖问题

1.YUM源

Yum源:
1.基于RPM包构建的软件更新机制
2.自动解决依赖关系,自动从指定的服务器下载
3.所有软件包由集中的YUM软件仓库提供
(YUM软件仓库是指yum源)

Yum源分为:
本地Yum源:(系统光盘/镜像文件)==不需要网络的支持
网络Yum源: 国内:
阿里:
网易:http://mirrors.163.com/
清华镜像仓:https://mirrors.tuna.tsinghua.edu.cn/
官方仓库:redhat .repo 文件不可更改

2.更改YUM源

步骤:
1.备份 2.更改yum源 3.清楚缓存 4.创造新的配置缓存

配置镜像源之前的准备工作:
进入 YUM 仓库源配置文件
$ cd /etc/yum.repos.d/
查看当前系统拥有的仓库源配置文件

$ ls
这里我们是进入了 /etc/yum.repos.d/ 这个文件的,如果没有进入该文件,那就都需要指明是在这个路径下才行。比如在其他路径要查看仓库源配置文件的命令: ls /etc/yum.repos.d/
(备份 YUM 仓库源的所有配置文件,以免后续操作失误可以恢复)

$ mkdir /etc/yum.repos.d/backup
创建一个备份目录

$ cp /etc/yum.repos.d/* /etc/yum.repos.d/backup
将仓库源配置文件都复制一份到该备份目录中

$配置YUM仓库:
(1)配置『阿里云镜像源』仓库:

wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo

不同版本的阿里云镜像源配置文件去这里查看如何下载:https://developer.aliyun.com/mirror/centos

(2)配置『腾讯云镜像源』仓库:
参考博客:https://www.python100.com/html/70757.html

$更新YUM源:

yum clean all						# 清除原来的缓存
yum makecache						# 制造新的配置缓存
yum repolist						# 重新加载仓库列表

3.YUM的一些基础命令:

yum repolist                 #查看仓库名称
yum repolist enabled         #显示所有可用仓库 
yum install 软件名称          #仅安装指定的软件
yum  list  installed        #显示已安装的软件 
yum remove 软件名称          #删除软件
yum update                 #更新系统上已安装的软件包
yum search 软件名称         #搜索软件包
yum clean                 #清楚Yum缓存


例如:
yum install lrzsz      #lrzsz上传和下载的程序

4.YUM安装 (小试牛刀)

1.yum install-ysl		# 安装 『小火车』 
$ sl					
  #该命令可以直接运行小火车,小火车图形会动态地从终端屏幕上从右往左开过去
  
2.yum install-ycowsay		# 安装 『牛说话工具』
$ cowsay "Hello World!"
  # 牛说话"内容"

3.yum install-ybtop       # 系统监控

5.编译安装 (小试牛刀)

源码的安装一般由3个步骤组成:配置(configure)、编译(make)、安装(make install)。

下载『黑客帝国雨』源码包
mkdir /opt/src	   # 创建该目录,之后我们将把文件下载到这个目录里
cd /opt/src		   # 进入该目录
pwd				   # 查看一下当前路径
wget https://jaist.dl.sourceforge.net/project/cmatrix/cmatrix/1.2a/cmatrix-1.2a.tar.gz	
# 下载『黑客帝国雨』代码压缩包
tar -xzvf cmatrix-1.2a.tar.gz 	# 解压该压缩包
ll							  # 可以查看一下当前目录拥有哪些文件
cd cmatrix-1.2a/					# 进入该目录
ll			   				    # 查看一下有哪些文件
vim cmatrix.c						 # 可以打开查看一下该文件内容
yum -y install gcc automake autoconf libtool make		# 安装 C语言编译环境
yum -y install ncurses-devel		   # 安装依赖
./configure --prefix=/opt/cmatrix		# 有了编译环境之后,对配置文件 configure 指定编译后生成的文件存放的位置,类似于 windows 上指定文件要存放的位置一样
make	# 编译
make install	# 安装
ll /opt/cmatrix/		# 可以看到有个 bin 目录,即我们的编译生成的 可执行文件存放的位置
/opt/cmatrix/bin/cmatrix	# 直接运行该可执行文件

五、防火墙

防火墙的一些基本命令:

systemctl disable firewalld         #查看防火墙状态
firewall-cmd --zone=public --add-port=80/tcp --permanent #添加80端口
netstat -tlnp                      #查看服务器端口
firewall-cmd --query-port=80/tcp   #查看80端口是否启动
firewall-cmd --reload              #重新加载防火墙配置
netstat -tlnp                      #查询所有开启的防火墙
firewall-cmd --state               #查询防火墙是否开启

六、WEB服务器

一些概念

URI 即统一资源定位符(Uniform Resource Identifier)
2.
HTTP:超文本传输协议
HTTPS:安全性更高
【协议类型】://【服务器地址】:【端口号】/【资源层级UNIX文件路径】【文件名】?【查询】#【片段ID】

主流的WEB服务器

https://httpd.apache.org/
#Apache服务也叫 httpd

https://tomcat.apache.org/
#Apache Tomcat服务
特点:Java使用,轻量

http://nginx.org/
#ngix服务
特点: 稳定(7*24)、性能高()、反向代理服务器

安装WEB服务器(Nginx)

$ yum install -y nginx		# 安装 Nginx 服务器
$ systemctl status nginx	# 查看 Nginx 服务状态,此时显示未启动的状态
$ systemctl start nginx		# 启动 Nginx 服务
$ systemctl stop firewalld	# 需要关闭防火墙
$ setenforce 0              # 临时关闭selinx

# 	永久关闭se;inx:vim /etc/selinux/config
    更改配置文件:SELINUX=disabled


$ ps -ef | grep nginx    查看nginx的进程

Nginx的配置文件

1.基础命令

$ tail -f /var/log/nginx/error.log		# 实时刷新文件内容,查看最新日志
$ vim /etc/nginx/nginx.conf				# 配置 nginx 的配置文件
$ ps -ef | grep nginx					# 查看 nginx 进程
$ kill -9								# 杀死进程

$ nginx -t								# 修改完配置文件记得测试一下配置文件是否有『语法或配置错误』
$ nginx -s reload					    # 重新加载配置文件

2.文件内容

在这里插入图片描述

3.404等问题

出现的问题:
状态码:404: 找不到文件
状态码:403:
(1)访问的是一个目录,目录下没有任何文件
​ (2)selinux未关闭(未配置)
​ DAC(自主访问控制):用户权限
​ MAC(强制访问控制):进程权限,对普通/root用户都一视同仁,都需要配置权限才能访问

4.server块

server块:

server {
        listen 80;
        server_name     www.zhaoliu.com;
        root            /www;
        location = /hello/ {
                #root   /www/zhaoliu/2023/11/20;    # 访问该路径时跳转索要资源的根路径
                #alias /www/zhaoliu/2023/11/20/;	# 把匹配路径更换别名
                #index my.html;						# 指定默认访问路径
        }
    }


路由映射匹配规则

location请求路由映射,匹配规则

匹配符匹配规则优先级
=精确匹配1
^~以某个字符串开头2
~区分大小写的正则匹配3
~*不区分大小写的正则匹配4
!~区分大小写不匹配的正则5
!~*不区分大小写不匹配的正则6
/通用匹配,任何请求都会匹配到7

精确匹配     =
location = /image{
root= XXXXXX;
}

正则表达式:
server_name"~^www\.\w{1,10}\.com$";		
# 正则表达式需要在外层用双引号""包裹

正则:
​ 1、必须以 ~ 开头标识这是一个正则表达式
​ 2、正则表达式以 ^ 开始,$ 结束
​ 3、域名中 . 要使用反斜杠 \ 转义
​ 4、正则表达式中有花括号的话,必须要用双引号引起来

优先级:精确匹配 > 通配符


@
当url为目录时 (/)
如果未配置index,则默认找index.html的文件
没有index.html的文件则报错,或者匹配其余location规则
配置静态页面
1.进入Nginx的配置文件: vim nginx.conf
2.配置以下地址:
server {
    listen       80;
    server_name  localhost;

    #charset koi8-r;

    #access_log  logs/host.access.log  main;

    location / {
        root   /work/statics/mi; # 你的静态资源路径
        index  index.html index.htm;# 访问的文件为html, htm
    }

3.重新加载nginx配置文件并启动

 加载文件
 /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
 
 重新加载并启动Nginx
 ./nginx -s reload

@
详细请查看:3分钟搞懂阿里云服务器安装Nginx并配置静态访问页面-阿里云开发者社区 (aliyun.com)此链接

5.随堂笔记

/etc/nginx/nginx.conf
主配置文件:nginx.conf
多个网页 加一个新的server
nginx的错误日志:
tail -f /var/log/nginx/error.log

find / -namenginx.conf		
# 从根目录去查找 nginx.conf 这个文件,不记得了文件名可以用 find 命令去查找
    #定义虚拟主机
    server {
            #监听端口号
        listen       80 default_server;
        listen       [::]:80 default_server;    #ipv6的监听 
        #域名           _所有
        server_name  _;         #server_name_域名
         #网站根路径
        root         /usr/share/nginx/html;

        # Load configuration files for the default server block.
        include /etc/nginx/default.d/*.conf;
         
        #location请求路由映射,匹配规则  

    location / {
        root   /work/statics/mi;       # 你的静态资源路径
        index  index.html index.htm;
          # 访问的文件为html, htm
    }

在这里插入图片描述
(此图搬运)

Location下的子元素root和alias
在这里插入图片描述

6.随堂练习

在这里插入图片描述

7、常见问题处理

网络问题

1.红帽8无法使用修改网络配置文件来更改网络
2.少了网络标识:
在这里插入图片描述

安装MYSQL问题

在这里插入图片描述

安装yum软件包管理器:
#yum install -y environment-modules
(安装后退出重进终端生效)
在这里插入图片描述
在这里插入图片描述

  • 23
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值