Nginx是一款高性能的http 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器
下载地址:
http://nginx.org/en/download.html
windows版本的下载后直接解压到指定非中文目录
windows Nginx相关命令
cmd进入nginx安装目录
查看Nginx的版本号:
nginx -v
启动Nginx:(默认启动端口:80)
start nginx 或 start nginx.exe
启动后浏览器进入http://localhost:80/,启动成功则会出现nginx欢迎页面
修改端口记事本打开nginx安装目录->conf->nginx.conf
server {
#端口号默认80
listen 8099;
server_name localhost;
...
}
快速停止或关闭Nginx
nginx -s stop
正常停止或关闭Nginx:
nginx -s quit
配置文件修改重装载命令:
nginx -s reload
查看nginx进程
tasklist /fi "imagename eq nginx.exe"
查看所有nginx进程
tasklist /fi "imagename eq nginx.exe"
彻底停止nginx服务
taskkill /f /t /im nginx.exe
在 windows 系统中访问 linux 中 nginx,默认不能访问的,因为防火墙问题
(1)关闭防火墙 (2)开放访问的端口号,80 端口
查看开放的端口号
firewall-cmd --list-all
设置开放的端口号
firewall-cmd --add-service=http –permanent
firewall-cmd --add-port=80/tcp --permanent
重启防火墙
firewall-cmd –reload
配置文件相关字段说明
location指令
1、= :用于不含正则表达式的 uri 前,要求请求字符串与 uri 严格匹配,如果匹配 成功,就停止继续向下搜索并立即处理该请求。
2、~:用于表示 uri 包含正则表达式,并且区分大小写。
3、~*:用于表示 uri 包含正则表达式,并且不区分大小写。
4、^~:用于不含正则表达式的 uri 前,要求 Nginx 服务器找到标识 uri 和请求字 符串匹配度最高的 location 后,立即使用此 location 处理请求,而不再使用 location 块中的正则 uri 和请求字符串做匹配。
nginx负载均衡:
server地址可以为网关地址,或其他服务地址
upstream remote-server {
server 10.10.20.96:9000;
server 10.10.20.96:9001;
}
server {
listen 80;
server_name 10.10.20.96;
location / {
root html;
proxy_pass http://remote-server;
index index.html index.htm;
}
...
}
负载均衡策略:
1.轮询(默认)
每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器 down 掉,能自动剔除。
2.weight
weight 代表权重, 默认为 1,权重越高被分配的客户端越多
upstream remote-server {
server 10.10.20.96:9000 weight=2;
server 10.10.20.96:9001 weight=2;
}
3.ip_hash
ip_hash 每个请求按访问 ip 的 hash 结果分配,这样每个访客固定访问一个后端服务器
upstream remote-server {
ip_hash;
server 10.10.20.96:9000;
server 10.10.20.96:9001;
}
4.fair(第三方)
fair(第三方),按后端服务器的响应时间来分配请求,响应时间短的优先分配。
upstream remote-server {
server 10.10.20.96:9000;
server 10.10.20.96:9001;
fair;
}