文章目录
- 一,说明
- 二,下载
- 三,Windows下安装
- 1,安装
- 2,启动
- 3,验证
- 四,Linux下安装
- 1,安装
- 2,启动
- 3,验证
- 五,Nginx配置
一,说明
Nginx是一款高性能Web和反向代理服务器,提供内存少,高并发,负载均衡和反向代理服务,支持windos和linux系统
二,下载
打开浏览器,输入地址: https://nginx.org/en/download.html,红框左边linux版本,右边windows版本
三,Windows下安装
1,安装
直接解压,放在无中文路径的目录下,比如D盘
2,启动
1,直接双击nginx.exe,启动nginx服务器
2,命令行cd到该目录,通过start nginx,启动nginx服务器
进入目录:D:\nginx-1.24.0
启动:start nginx.exe
停止:nginx.exe -s stop
重新加载:nginx.exe -s reload
验证配置文件: nginx -t
使用配置文件: nginx -c "配置路径"
使用帮助: nginx -h
3,验证
输入http://localhost,访问页面如下表示成功
四,Linux下安装
1,安装
1,下载openssl,zlib,pcre,nginx包,并将每个包通过xftp放入自己定义的目录中
openssl: https://www.openssl.org/source/
zlib: http://www.zlib.net/
pcre: https://sourceforge.net/projects/pcre/files/pcre/8.45/
nginx: https://nginx.org/en/download.html
2,openssl安装
tar -zxvf openssl-3.1.2.tar.gz
cd openssl-3.1.2
./config
make && make install
3,zlib安装
tar -zxvf zlib-1.3.tar.gz
cd zlib-1.3
./configure
make && make install
4,pcre安装
tar -zxvf pcre-8.45.tar.gz
cd pcre-8.45
./configure
make && make install
5,nginx安装
tar -zxvf nginx-1.24.0.tar.gz
cd nginx-1.24.0
./configure --prefix=/usr/install/nginx --with-pcre=../pcre-8.45 --with-zlib=../zlib-1.3 --with-openssl=../openssl-3.1.2
make && make install
2,启动
进入目录:cd nginx/sbin目录
启动: ./nginx
停止: ./nginx -s stop
重新加载: ./nginx -s reload
验证配置文件: ./nginx -t
使用配置文件: ./nginx -c "配置路径"
使用帮助: ./nginx -h
3,验证
进入目录:cd nginx/sbin
验证配置文件: ./nginx -t
五,Nginx配置
这里提供静态服务,反向代理,负载均衡等功能,
#user nobody;
worker_processes 1; #开启的工作进程数量
#错误日志存放路径
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
#pid logs/nginx.pid; #pid存放路径
events { #工作模式配置
worker_connections 1024; #工作进程的最大连接数量
}
http { # http设置
include mime.types; #指定在当前文件中包含另一个文件的指令
default_type application/octet-stream; #指定默认处理的文件类型可以是二进制
# 日志格式设置
#log_format main '$remote_addr - $remote_user [$time_local] "$request" '
# '$status $body_bytes_sent "$http_referer" '
# '"$http_user_agent" "$http_x_forwarded_for"';
#access_log logs/access.log main;
sendfile on; #将文件的回写过程交给数据缓冲去去完成
#tcp_nopush on; #让nginx在一个数据包中发送所有的头文件
#keepalive_timeout 0;
keepalive_timeout 65; #给客户端分配连接超时时间
#gzip on; #gzip压缩的形式发送数据
#静态服务
server {
listen 80; #监听的端口
server_name localhost; #监听的域名
location / { #表示匹配访问目录
root html; #访问虚拟主机的web目录
index index.html index.htm; #默认展示的资源文件列表
}
}
#反向代理
server {
listen 80; #监听的端口
server_name localhost; #监听的域名
location /test/ { #表示匹配访问目录
proxy_set_header Host $host;
proxy_set_header X-Real-Ip $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_pass http://127.0.0.1:8080/test/; #转发请求的地址
}
}
#负载均衡
upstream test{
server 192.168.0.111:8080; #应用服务器
}
server {
listen 80; #监听的端口
server_name localhost; #监听的域名
location / { #表示匹配访问目录
proxy_pass http://test; #转发请求的地址
}
}
}