Fork me on GitHub

windows下nginx的安装及使用

下载nginx

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

下载稳定版本,以nginx/Windows-1.12.2为例,直接下载 nginx-1.12.2.zip
下载后解压,解压后如下

nginx命令

WindowsNginx的启动、停止等命令, 可以进入到nginx的安装根目录,执行nginx.exe -h

1
2
3
4
5
6
7
8
9
10
11
12
13
14
注意不要直接双击nginx.exe,这样会导致修改配置后重启、停止nginx无效,需要手动关闭任务管理器内的所有nginx进程
在nginx.exe目录,打开命令行工具,用命令 启动/关闭/重启nginx
start nginx : 启动nginx
nginx -s reload :修改配置后重新加载生效
nginx -s reopen :重新打开日志文件
nginx -t -c /path/to/nginx.conf 测试nginx配置文件是否正确
关闭nginx:
nginx -s stop :快速停止nginx
nginx -s quit :完整有序的停止nginx
如果遇到报错:
bash: nginx: command not found
有可能是你再linux命令行环境下运行了windows命令,
如果你之前是允许 nginx -s reload报错, 试下 ./nginx.exe -s reload
或者 用windows系统自带命令行工具运行

检查nginx是否启动成功

直接在浏览器地址栏输入网址 http://localhost:80,回车,出现以下页面说明启动成功

nginx配置

nginx安装目录下 conf目录下的nginx.conf,默认配置的nginx监听的端口为80,如果80端口被占用可以修改为未被占用的端口即可

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
静态服务器

server {

listen 80;
# server_name crmmanage.superboss.cc;
server_name blog.html-js.site;
# server_name crmappdev.hz.taeapp.com;
charset utf-8;
index index.html;

location / {
# root /Users/wy/project/hexo-blog; # mac
root "D:/project/hexo-blog"; # windows
}
}

反向代理
hosts 绑定 127.0.0.1 p.crm

server {

listen 80;
server_name p.crm;
charset utf-8;
index index.html;

location ~* ^.+\.(rjson)$ {
# 测试环境
proxy_pass http://dingcrmapp.superboss.cc;
# proxy_pass http://192.168.63.41:8080; #沛文
}
location / {
proxy_pass http://localhost:8000; # 本地服务
}
}

使用nginx代理服务器做负载均衡

我们可以修改nginx的配置文件nginx.conf 达到访问nginx代理服务器时跳转到指定服务器的目的,即通过proxy_pass 配置请求转发地址,即当我们依然输入http://localhost:80 时,请求会跳转到我们配置的服务器

同理,我们可以配置多个目标服务器,当一台服务器出现故障时,nginx能将请求自动转向另一台服务器,例如配置如下:

当服务器 localhost:8080 挂掉时,nginx能将请求自动转向服务器 192.168.101.9:8080 。上面还加了一个weight属性,此属性表示各服务器被访问到的权重,weight
越高被访问到的几率越高。

测试或载入指定配置文件

注意,修改了配置文件后最好先检查一下修改过的配置文件是否正 确,以免重启后Nginx出现错误影响服务器稳定运行。判断Nginx配置是否正确命令如下:

1
C:\server\nginx-1.0.2>nginx.exe -t -c conf/default.conf

nginx: the configuration file C:\server\nginx-1.0.2/conf/default.conf syntax isok
nginx: configuration file C:\server\nginx-1.0.2/conf/default.conf test is successful

载入指定配置文件

1
C:\server\nginx-1.0.2>start nginx.exe -c conf/default.conf

坚持原创技术分享,您的支持将鼓励我继续创作!