nginx 基本使用
简介
Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的,第一个公开版本0.1.0发布于2004年10月4日。
Nginx 可以在大多数 Unix Linux OS 上编译运行,并有 Windows 移植版。 Nginx 的1.20.0稳定版已经于2021年4月20日发布,一般情况下,对于新建站点,建议使用最新稳定版作为生产版本,已有站点的升级急迫性不高。Nginx 的源代码使用 2-clause BSD-like license。
在连接高并发的情况下,Nginx是Apache服务不错的替代品:Nginx在美国是做虚拟主机生意的老板们经常选择的软件平台之一。能够支持高达 50,000 个并发连接数的响应,感谢Nginx为我们选择了 epoll and kqueue作为开发模型。
支持操作系统
FreeBSD 3— 10 / i386; FreeBSD 5— 10 / amd64;
Linux 2.2— 4 / i386; Linux 2.6— 4 / amd64; Linux 3— 4 / armv6l, armv7l, aarch64;
Solaris 9 / i386, sun4u; Solaris 10 / i386, amd64, sun4v;
AIX 7.1 / powerpc;
HP-UX 11.31 / ia64;
Mac OS X / ppc, i386;
Windows XP, Windows Server 2003,Windows 10
1、下载
官网地址 (带有window字样的是window版本,没有待window是linux版本)
2、常用配置
找到conf打开nginx.conf文件进行配置 (\nginx\conf\nginx.conf)文件路径。HTTP代理 示例https://www.nginx.cn/doc/standard/httpproxy.htmlhttps://www.nginx.cn/doc/standard/httpproxy.html
负载均衡 示例https://www.nginx.cn/doc/example/loadbanlance.htmlhttps://www.nginx.cn/doc/example/loadbanlance.html
代码示例
#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;events {worker_connections 1024;
}
http {#负载均衡upstream myproject {server 127.0.0.1:8000 weight=3; #设置权重 权重越高被访问的次数越多server 127.0.0.1:8001 weight=1;server 127.0.0.1:8002 weight=1;server 127.0.0.1:8003 weight=2;}include mime.types;default_type application/octet-stream;sendfile on;keepalive_timeout 65;#第一个代理server {# 需要被监听的端口号,前提是此端口号没有被占用,否则在重启 Nginx 时会报错listen 5777;# 服务名称,无所谓server_name localhost;# 上述端口指向的根目录root E:/xxx/dist;# 项目根目录中指向项目首页index index.html;client_max_body_size 500m; client_body_buffer_size 128k;# 根请求会指向的页面location / { root E:/xxx/dist;# 此处的 @router 实际上是引用下面的转发,否则在 Vue 路由刷新时可能会抛出 404try_files $uri $uri/ @router;# 请求指向的首页index index.html;}# 由于路由的资源不一定是真实的路径,无法找到具体文件# 所以需要将请求重写到 index.html 中,然后交给真正的 Vue 路由处理请求资源location @router {rewrite ^.*$ /index.html last; }location /xxxx/server.servlet.context-path { #代理路径1proxy_pass http://127.0.0.1:5778/xxx; #本地真实ip端口}location /xxx/xxx { #代理路径2proxy_pass http://127.0.0.1:20101/xxx; #本地真实ip端口}}#第二个代理server {listen 57777; #这个nglnx监听的端口 #需要代理的端口server_name localhost;location /xxx/server.servlet.context-path { #代理路径1proxy_pass http://127.0.0.1:5778/xxx; #本地真实ip端口}location /xxxx/server.servlet.context-path { #代理路径2proxy_pass http://127.0.0.1:20101/xxx; #本地真实ip端口} }}
- http默认端口:80 https默认端口:441;
- http下可以设置多个server;
- 一个server下可以配置多个 location ;
- 负载均衡:设置的权重越高被访问的次数越多;
- conf中一定要用分号“;”结尾;
1、启动:
C:\server\nginx-1.0.2>start nginx或
C:\server\nginx-1.0.2>nginx.exe2、停止:
C:\server\nginx-1.0.2>nginx.exe -s stop或
C:\server\nginx-1.0.2>nginx.exe -s quit
注:stop是快速停止nginx,可能并不保存相关信息;quit是完整有序的停止nginx,并保存相关信息。3、重新载入Nginx:
C:\server\nginx-1.0.2>nginx.exe -s reload
当配置信息修改,需要重新载入这些配置时使用此命令
nginx 基本使用相关推荐
- nginx配置http、https访问,nginx指定ssl证书,阿里云腾讯云华为云设置nginx https安全访问
nginx配置http.https访问 要设置https访问需要从对应的云厂商申请证书,并下载Nginx证书到服务器. 我这里从阿里云申请了免费的域名证书,然后将证书放置在服务器的/etc/ssl/. ...
- Web项目使用nginx实现代理端口访问,看这篇就够了
在搭建服务器的时候,项目部署在tomcat上,要访问项目,则需要加上端口号,如何隐藏端口号来访问呢,这就用到了nginx. nginx可以在docker上安装,也可以在linux上安装,这里我建议使用 ...
- nginx介绍及常用功能
什么是nginx nginx跟Apache一样,是一个web服务器(网站服务器),通过HTTP协议提供各种网络服务. Apache:重量级的,不支持高并发的服务器.在Apache上运行数以万计的并发访 ...
- Nginx搭建负载均衡集群
(1).实验环境 youxi1 192.168.5.101 负载均衡器 youxi2 192.168.5.102 主机1 youxi3 192.168.5.103 主机2 (2).Nginx负载均衡策 ...
- 快速通过nginx配置域名访问
配置nginx进行域名访问文件 在nginx安装目录下的conf目录下新建一个配置文件,比如你新加的域名为admin.hello.com,你希望通过这个域名访问admin项目,那么新建一个admin. ...
- Docker学习(七)-----Docker安装nginx
基本安装 1. 拉取Nginx镜像 docker pull nginx:latest 2. 查看本地镜像列表(即可看到nginx) docker images 3. 运行容器 docker run - ...
- 使用阿里云服务器安装docker,并用nginx示例
一.前言 之前对docker了解不多,自从使用了一次之后,就感觉这个产品对开发者实在是太友好了,可以迅速在Linux,window等平台部署服务.常见的有数据库,nginx,消息队列,redis等.利 ...
- Centos7.4安装Nginx
Centos7.4安装Nginx 使用yum命令 一.安装准备 首先由于nginx的一些模块依赖一些lib库,所以在安装nginx之前,必须先安装这些lib库,这些依赖库主要有g++.gcc.open ...
- nginx将泛解析的匹配域名绑定到子目录配置方法
应用场景: http://zzl.lteam.cn/ 访问/usr/local/boke/lteam.cn/zzl 目录下的 index.html http://lj.lteam.cn/ 访问/usr ...
- ubuntu搭建nginx环境
1.首先给服务器上配置好JDK环境,之前有说过,在这就不多说了.本人安装的是JDK1.6. 2. 准备好2个TOMCAT,上传到服务器上.修改tomcat端口,所有端口必须不一致.本次演示用tomca ...
最新文章
- Systemd:再一次的,回归第一进程
- ubuntu清除mac缓存
- 大小端、位段和内存对齐
- 真实感人故事_您的数据可以告诉您真实故事吗?
- DELPHI TreeView 文件目录树和 设置节点图标 完整
- JavaScript 学习计划
- Nodejs中cluster模块的多进程共享数据问题
- 通过定制控制在屏幕上显示图片
- 叶面积指数(LAI)数据、NPP数据、GPP数据、植被覆盖度数据获取
- 利用vs 分析DMP文件、pdb文件定位release下的异常崩溃
- 训练集、验证集、测试集的作用
- Java 延迟队列 DelayQueue 的原理
- 微软中国总部半日游学小记
- 文件的三种加载方式(全网讲解最全,最严谨)
- Power BI的基本操作
- WEB前端代码:边框阴影、边框图片、背景样式、文本样式、字体样式
- disabled spring cloud bus interation with spring cloud sleuth zipkin
- 小白起步-大数据环境搭建-Java环境配置
- 目前住院病人主要由护士护理,这样做不仅需要大量护士,而且还可能会延误抢救时机。某医院打算开发一个以计算机为中心的患者监护系统,试写出问题定义,并且分析开发这个系统的可行性。
- php三元运算符怎么用,PHP三元运算符使用说明