windows下nginx安装、配置与使用

#下载地址

http://nginx.org/en/download.html

选择Stable version下载

 

#安装

解压即可

 

#使用

1)作为文件服务器

修改conf文件夹下的nginx.conf文件,在server内添加以下配置

location /visit {
     alias D:/FTP/dsm;
     autoindex on;
     autoindex_exact_size off;
     autoindex_localtime on;
}

 

其中:

alias 当客户端请求/visit/file.ext 的时候,Nginx把请求映射为D:/FTP/dsm/file.ext;与root的区别是:root则把请求映射为D:/FTP/dsm/visit/file.ext 。

autoindex 默认是不允许列出整个目录的,如需此功能,则设置为on。

autoindex_exact_size  默认为on,显示出文件的确切大小,单位是bytes。

autoindex_localtime 默认为off,显示的文件时间为GMT时间,改为on后,显示的文件时间为文件的服务器时间。

 

2)作为负载均衡

Nginx提供的负载均衡策略有2种:内置策略和扩展策略。内置策略为轮询,加权轮询,Ip hash。
扩展策略,就天马行空,只有你想不到的没有他做不到的啦,你可以参照所有的负载均衡算法,给他一一找出来做下实现。

修改conf文件夹下的nginx.conf文件,在http内添加以下配置

upstream backend{

  server 192.168.1.250:15005 max_fails=2 fail_timeout=600s;

  server 192.168.1.115:8080 max_fails=2 fail_timeout=600s backup;

}
max_fails:定义可以发生错误的最大次数
fail_timeout:nginx在fail_timeout设定的时间内与后端服务器通信失败的次数超过max_fails设定的次数,则认为这个服务器不在起作用;在接下来的 fail_timeout时间内,nginx不再将请求分发给失效的server。
backup:这台服务器就会成为备份服务器。在平时不使用,nginx不会给它转发任何请求。只有当其他节点全部无法连接的时候,nginx才会启用这个节点。一旦有可用的节点恢复服务,该节点则不再使用,又进入后备状态。
健康检查机制:Nginx在检测到后端服务器故障后,nginx依然会把请求转向该服务器,当nginx发现timeout或者refused后,会把改请求会分发到upstream的其它节点,直到获得正常数据后,nginx才会把数据返回给用户

在server内添加以下配置

location / {
   proxy_pass http://backend;
proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504 http_403 http_404 non_idempotent;
  proxy_next_upstream_tries 1;
  proxy_connect_timeout 5s;
  proxy_read_timeout 5s;
  proxy_send_timeout 5s;
}

 

#启动或关闭nginx

1)启动

在bin目录下执行

start nginx

2)终止进程

nginx -s stop

3)  完成已经接受的连接请求,优雅的终止进程

nginx -s quit

4)重新生成日志文件,在切割日志时用途较大

nginx -s reopen

5)平滑重启,重新加载配置文件

nginx -s reload

 

#设置开机自启

1)下载https://github.com/winsw/winsw/releases/tag/v2.10.3下的这个文件  WinSW.NET4.exe ,然后复制到nginx根目录,并且将其重命名为nginx-service.exe 

2)在nginx根目录下新建一个xml文件:nginx-service.xml,内容如下:

<?xml version="1.0" encoding="UTF-8" ?>
<service>
    <id>nginx</id>
    <name>nginx</name>
    <description>nginx service</description>
    <logpath>F:\nginx-1.18.0\logs\</logpath>
    <logmode>roll</logmode>
    <depend></depend>
    <executable>F:\nginx-1.18.0\nginx.exe</executable>
    <stopexecutable>F:\nginx-1.18.0\nginx.exe -s quit</stopexecutable>
</service>

3)在nginx安装目录下以管理员运行命令:.\nginx-service.exe install 就成功将其注册为Windows服务了,并设置开机自启

4)常用命令

nginx-service.exe install 命令可注册对应的系统服务
nginx-service.exe uninstall 命令可删除对应的系统服务
nginx-service.exe stop 命令可停止对应的系统服务
nginx-service.exe start 命令可启动对应的系统服务

 

 

posted @ 2020-11-06 17:40  家乐先生  阅读(379)  评论(0编辑  收藏  举报