【Linux基础】安装nginx
文章目录
- 【Linux基础】安装nginx
- 1、下载nginx
- 2、安装nginx
- 3、使用nginx
- 4、配置nginx环境变量
1、下载nginx
在Nginx的官网的下载页面中(http://nginx.org/en/download.html),就展示了当前Nginx版本,并提供了下载的连接。 如下:
将文件上传到linux虚拟机中
2、安装nginx
安装依赖包
因为nginx是基于c语言开发的,所以我们在安装前,需要先去安装c语言的编译环境和一些第三方库
yum -y install pcre-devel zlib-devel openssl openssl-devel
注意:我前面已经安装gcc已经安装过,这里就不安装了
下载Nginx安装包,前面如果没有传过来,可以使用这步,,如果已经有安装包可以省略这步骤
yum install wget
wget https://nginx.org/download/nginx-1.16.1.tar.gz
wget :
wget命令用来从指定的URL下载文件。wget非常稳定,它在带宽很窄的情况下和不稳定网络中有很强的适应性,如果是由于网络的原因下载失败,wget会不断的尝试,直到整个文件下载完毕。如果是服务器打断下载过程,它会再次联到服务器上从停止的地方继续下载。
执行完wget指令后,就会在当前所在目录看到下载下来的文件。
解压nginx压缩包
cd /soft
tar -xvf nginx-1.16.1.tar.gz
配置Nginx编译环境
cd nginx-1.16.1
./configure --prefix=/usr/local/nginx
说明:
--prefix 指定的目录,就是我们安装Nginx的目录。
编译安装
make && make install
3、使用nginx
安装完Nginx后,我们可以切换到Nginx的安装目录(/usr/local/nginx),先来熟悉一下Nginx的目录结构,如下图:
重点目录和文件如下:
目录/文件 | 说明 | 备注 |
---|---|---|
conf | 配置文件的存放目录 | |
conf/nginx.conf | Nginx的核心配置文件 | conf下有很多nginx的配置文件,我们主要操作这个核心配置文件 |
html | 存放静态资源(html, css, ) | 部署到Nginx的静态资源都可以放在html目录中 |
logs | 存放nginx日志(访问日志、错误日志等) | |
sbin/nginx | 二进制文件,用于启动、停止Nginx服务 |
常用命令
Nginx中,我们的二进制可执行文件(nginx)存放在sbin目录下,虽然只有一个可执行文件,但是我们可以通过该指令配合不同的参数达到更加强大的功能。接下来,我们就演示一下Nginx常见指令, 在执行下面的指令时,都需要在/usr/local/nginx/sbin/目录下执行。
./nginx -v # version ,查看版本
检查配置文件
./nginx -t # test
启动nginx
./nginx
启动之后,我们可以通过ps -ef指令来查看nginx的进程是否存在。
注意:
要想正常访问Nginx,需要关闭防火墙或开放指定端口号,执行的指令如下:
A. 关闭防火墙
systemctl stop firewalld
B. 开放80端口
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --reload
停止nginx
x 1./nginx -s stop
停止之后,我们可以查看nginx的进程:
ps -ef|grep nginx
重新加载,当修改了Nginx配置文件后,需要重新加载才能生效,可以使用下面命令重新加载配置文件:
./nginx -s reload
4、配置nginx环境变量
在上述我们在使用nginx命令在进行服务的启动、停止、重新加载时,都需要用到一个指令nginx,而这个指令是在nginx/sbin目录下的,我们每一次使用这个指令都需要切换到sbin目录才可以,使用相对繁琐。那么我们能不能在任意目录下都可以执行该指令来操作nginx呢?答案是可以的,配置nginx的环境变量即可。
通过vim编辑器,打开/etc/profile文件, 在PATH环境变量中增加nginx的sbin目录,如下:
[root@localhost ~]# vim /etc/profile
修改完配置文件之后,需要执行 source /etc/profile 使文件生效。 接下来,我们就可以在任意目录下执行nginx的指令了,如:
[root@localhost ~]# source /etc/profile
[root@localhost ~]# nginx -v