下载Nginx
安装C语言环境
因为nginx这款软件是使用C‘语言编写的,那么安装nginx的时候需要先安装C语言编译环境
yum install -y gcc-c++
yum install -y pcre pcre-devel
yum install -y zlib zlib-devel
yum install -y openssl openssl-devel
安装Nginx
解压缩
tar -xvf nginx-1.22.0.tar.gz
执行默认的安装配置脚本
cd nginx-1.22.0
./configure
编译
make
安装
make install
查看Nginx被安装到哪里了
whereis nginx
创建软链接
ln -s /usr/local/nginx nginx
扩展小知识: 软链接和硬链接的区别
-
软链接使用ln -s命令, 硬链接使用 ln命令
-
如果源文件不存在了, 那么软链接也就没有用了
-
如果源文件不存在了, 那么硬链接依然可以使用
Nginx程序的目录结构
-
conf (配置文件目录)
-
nginx.conf
-
其他文件
-
-
html (代理文件目录)
-
index.html
-
50x.html
-
-
logs (日志文件目录)
-
在运行时会产生一些日志文件
-
-
sbin (启动程序目录)
-
nginx
-
Nginx程序启动/关闭/重启
执行nginx/sbin/nginx
如果你在用户家目录里面 /root
./nginx/sbin/nginx
如果你已经进入了nginx软链接
./sbin/nginx
如果你已经进入了sbin目录
./nginx
修改了nginx.conf配置文件后, 需要重新加载配置文件才会生效, 在启动命令后面加 -s reload
关闭nginx
-
方法1: 在启动命令后面加 -s quit
-
方法2: 在后台结束任务 (适用于关闭任何程序)
## 查看所有的后台程序列表
ps -ef
## 查看所有的后台程序列表, 并在列表中搜索nginx
ps -ef | grep nginx
B/S架构
软件系统架构一般有两种
-
B/S架构
B指的是Browser, 即浏览器
S指的是Server, 即服务器
-
C/S架构
C指的是Client, 即客户端
S指的是Server, 即服务器
那么Nginx是一款用于B/S架构中的服务器端程序
管理防火墙的命令
## 如果你不清楚现在防火墙是什么状态, 用这条命令进行查看
systemctl status firewalld
## 关闭防火墙 (如果是enable状态, 那么重启后防火墙会自动启动)
systemctl stop firewalld
## 启动防火墙
systemctl start firewalld
## 重启防火墙
systemctl restart firewalld
## 允许开机后自动启动防火墙
systemctl enable firewalld
## 禁止开机后自动启动防火墙
systemctl disable firewalld
当防火墙处于运行状态的时候, 任何一个端口都无法被监听
当防火墙处于关闭状态的时候, 任何一个端口都可以被监听
这是两种极端
-
在学习环境中, 为了方便测试, 通常都是关闭防火墙并禁止自动启动
-
在实际环境中, 防火墙不能关, 可以单独放开某一个或某几个端口
防火墙管理端口命令
查看已放开的端口列表
firewall-cmd --list-ports
放开一个端口
firewall-cmd --permanent --add-port=80/tcp
关闭一个端口
firewall-cmd --permanent --remove-port=80/tcp
重新加载防火墙规则 (放开和关闭都需要执行这条命令才能生效)
firewall-cmd --reload