1. 概述
Nginx是一个高性能的反向代理和web服务器软件,特点是系统资源消耗低、高性能、高并发、扩展性好。一个进程可以处理多个请求,并且是非阻塞式响应。
- windows安装
- 安装包下载地址:https://nginx.org/en/download.html
- 下载之后解压运行nginx.exe文件即可。
- Linux安装
2. rpm包安装:
2.1. rpm包下载地址:
http://nginx.org/packages/rhel/7/x86_64/RPMS/
[root@master ~]# wget http://nginx.org/packages/rhel/7/x86_64/RPMS/nginx-1.10.0-1.el7.ngx.x86_64.rpm
[root@master ~]# rpm -ivh nginx-1.10.0-1.el7.ngx.x86_64.rpm
[root@master ~]# nginx
[root@master ~]# nginx -v
2.2. 安装验证
2.3. 命令扩展
命令参数 | 含义 |
nginx | 启动 |
nginx -V | 查看当前版本及编译配置信息 |
nginx -t | 检查配置文件语法是否正确 |
nginx -s stop | 直接关闭worker子进程 |
nginx -s quit | 等待worker子进程正确处理完请求后关闭 |
nginx -s reload | 重读配置文件 |
3. yum安装:
3.1. 安装
[root@master ~]# rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
[root@master ~]# yum -y install nginx
[root@master ~]# systemctl start nginx
[root@master ~]# systemctl status nginx
3.2. 命令扩展
命令参数 | 含义 |
systemctl start nginx / service nginx start | 启动nginx |
systemctl stop nginx / service nginx stop | 停止nginx |
service nginx reload | 重载nginx |
ps -ef | grep nginx | 查看进程 |
netstat -anpl | grep nginx | 查看服务端口 |
3.3. 存储路径
路径 | 含义 |
/etc/nginx/nginx.conf | 默认配置文件的路径 |
/usr/share/nginx/html | 网站默认存放目录 |
/usr/sbin/nginx | 二进制文件存放路径 |
4. 源码包安装:
4.1. 需要手动安装依赖
yum -y install gcc pcre-devel zlib-devel openssl openssl-devel
4.2. 下载安装包
下载地址:http://nginx.org/en/download.html
4.3. 安装
[root@master ~]# wget http://nginx.org/download/nginx-1.24.0.tar.gz
[root@master ~]# tar -zxvf nginx-1.24.0.tar.gz
[root@master nginx-1.24.0]# ./configure --prefix=/usr/local/nginx #安装到指定位置
[root@master nginx-1.24.0]# make && make install
[root@master ~]# /usr/local/nginx/sbin/nginx
5. 简易文件服务器实现
5.1. 修改Nginx配置文件
vim /usr/local/nginx/conf/nginx.conf
server {listen 8085;# 域名或者IPserver_name localhost; # 正常显示中文charset gbk,utf-8;# 打开autoindex功能,以/结尾的请求autoindex on;# 显示文件的大小,# on:以字节显示# off:人性化显示,文件过大会显示为mb或gbautoindex_exact_size off;# 以哪种格式返回:html | xml | json | jsonp# 默认值:autoindex_format htmlautoindex_format html;# 显示时间格式# on: 12-Jul-2019 10:11(当前时区)# off: 12-Jul-2019 02:11(0时区,GMT)autoindex_localtime on; #charset koi8-r;#access_log logs/host.access.log main;location / {root /data/files/;# 判断文件是否以下这些方式结尾的,是的话可以下载if ($request_filename ~* ^.*?.(txt|doc|pdf|rar|gz|zip|docx|exe|xlsx|ppt|pptx)$){add_header Content-Disposition attachment;}}
5.2. 准备下载文件
[root@master ~]# echo aaa > /data/files/a.txt
5.3. 重新加载Nginx服务器
[root@master ~]# /usr/local/nginx/sbin/nginx -s reload