Nginx
是一款轻量级的Web
服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器。
它占有内存少,并发能力强,目前应非常广泛。
在Nginx
的官网的下载地址:http://nginx.org/en/download.html
可以看到此时最新版本1.23.1,稳定版1.22.0
这里以Linux
稳定版为例。
1) 安装依赖包
由于Nginx
是基于c语言开发的,所以需要安装c语言的编译环境,及正则表达式库等第三方依赖库。
yum -y install gcc pcre-devel zlib-devel openssl openssl-devel
2) 使用finallshell上传刚才下载的安装包
# 进入/usr/local下创建Nginx
cd /usr/local
# 创建nginx文件夹
mkdir nginx
# 进入nginx文件夹
cd nginx
拓展:
如果不想手动去官网下载安装包,再上传到Linux服务器的话。可以使用wget
命令在线下载
yum install wget # 安装 wget
wget https://nginx.org/download/nginx-1.22.0.tar.gz # 使用 wget命令从Nginx官网下载安装包
3) 解压nginx压缩包
tar -zxvf nginx-1.22.0.tar.gz
4) 配置Nginx编译环境
cd nginx-1.22.0
./configure --prefix=/usr/local/nginx
–prefix 指定的目录,就是我们安装的Nginx所在的目录。
5) 编译&安装
make # 编译
make install # 安装
whereis nginx # 查看nginx安装路径
make操作必须在 /usr/local/nginx/nginx-1.22.0目录下
6) 目录结构
安装完Nginx
后,我们可以切换到Nginx
的安装目录
cd /usr/local/nginx/nginx-1.22.0
发现此时这个目录下多了一些目录。
主要目录的相关说明如下:
目录/文件 | 说明 | 备注 |
---|---|---|
conf | 配置文件的存放目录 | |
conf/nginx.conf | Nginx的核心配置文件 | conf下有很多nginx的配置文件,我们主要操作这个核心配置文件 |
html | 存放静态资源(html, css, ) | 部署到Nginx的静态资源都可以放在html目录中 |
logs | 存放nginx日志(访问日志、错误日志等) | |
sbin/nginx | 二进制文件,用于启动、停止Nginx服务 |
Nginx
中,我们的二进制可执行文件nginx
存放在sbin
目录下。
虽然只有一个可执行文件,但是我们可以通过该指令配合不同的参数达到更加强大的功能。
在执行下面的指令时,都需要在/usr/local/nginx/sbin/
目录下执行。
1) 查看版本
./nginx -v
2). 检查配置文件
修改了nginx.conf
核心配置文件之后,在启动Nginx服务之前。
通常都会先检查一下conf/nginx.conf
文件配置的是否有错误。
./nginx -t
3). 启动
./nginx
Nginx服务启动后,默认就会有两个进程。
启动之后,我们可以直接访问Nginx的80
端口去查看欢迎界面,http://192.168.136.129/
注意:
要想正常访问Nginx
,需要关闭防火墙或开放指定端口号,执行的指令如下:
关闭防火墙
systemctl stop firewalld
实际生产环境不会选择直接关闭防火墙这种操作
开放80端口
firewall-cmd --zone=public --add-port=80/tcp --permanent # 开放80端口
firewall-cmd --reload # 重启防火墙
4) 停止服务
./nginx -s stop
5) 重新加载
./nginx -s reload
上述我们在使用nginx
命令在进行服务的启动、停止、重新加载时,都需要用到一个指令nginx
。
而这个指令是在/usr/local/nginx/sbin
目录下的。
每一次使 用这个指令都需要切换到sbin
目录才可以,太过繁琐。
解决方式:
通过vim
编辑器,修改/etc/profile
文件
vim /etc/profile
把Nginx
安装目录添加到如下位置:
修改完配置文件之后,需要执行下面命令使文件生效
source /etc/profile
在任意目录下执行nginx
的指令,如:
./nginx -t # 检查Nginx配置文件
注意:
如果在profile
文件中环境变量配置错了导致所有命令失效,可以使用如下命令让命令恢复后用vim再去修改
export PATH=$PATH:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
# 临时恢复命令后
# 再按下面去配置nginx 环境变量(这种配置方式和上面的效果一样,只不过这里把nginx安装路径定义成了变量)
export NGINX_HOME=/usr/local/nginx
export PATH=$PATH:$NGINX_HOME/sbin