刚遇到一个问题,所以学习一下nginx的使用,深了我也不知道,记录一下最简单的使用:
nginx
nginx一般有两种作用: 一个是作为http服务器,另一个就是反向代理,负载均衡.
1.什么是代理服务器?
代理有正向代理和反向代理.
正向代理: 客户端明确访问目标地址 , 就像访问国外的服务器, 隐藏了客户端信息.
反向代理: 客户端明确, 访问到nginx服务器, 由nginx服务器进行统一的分发, 具体请求到哪台后台服务器处理不知道.
2.负载均衡
nginx服务器接收到不同的请求, 这就是负载量, 按照一定的规则进行分发.
负载均衡就是将服务器接收到的请求按照规则分发的过程.
3.nginx的安装
nginx的是免安装的,直接从官网下载就可以使用了,下载解压,打开exe文件或者进入文件夹用命令行输入nginx启动.
启动后在浏览器中输入localhost访问,会显示默认界面welcome to nginx.
关闭 nginx -s stop
重启 nginx -s reload
4.nginx的配置
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server {
//定义监听的端口
listen 80;
//访问的服务名, 一般写的就是域名
server_name localhost;
//默认访问的页面,即访问域名(80)跳转的页面,上面讲到的nginx启动默认页面也是因为在默认路径下放了一个index.html页面
location / {
root C:/app/workapp/testnginx;
index login.html;
}
//代理,访问localhost/test1的真实url
location /test1 {
proxy_pass http://xxxxxx:9999/client/hello;
}
//代理,访问localhost/test2的真实url
location /test2 {
proxy_pass http://localhost:9000/client/hi;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}
测试的时候我将test1项目放在阿里云上, test2项目放在本地启动,通过一个login.html默认页面进行跳转.访问结果如下: