在本机上下载了一个nginx,版本为1.14.0。
安装:
对于安装比较简单,下载后解压到指定目录,目录结构如下
启动:
- 最简单的直接双击nginx.exe,有黑窗一闪而过,不要怀疑,看一下logs的错误日志,如果没报错的话其实你已经启动成功了;
- 打开命令行,进入到nginx的目录,执行start nginx,同理,错误日志未报错的话启动成功
如果实在不放心地话,可以在cmd命令窗口输入命令 tasklist /fi "imagename eq nginx.exe" ,出现如下结果说明启动成功:
关闭:
如果使用cmd命令窗口启动nginx,关闭cmd窗口是不能结束nginx进程的,可使用两种方法关闭nginx:
- 输入nginx命令:nginx -s stop (快速停止nginx) 或 nginx -s quit (完整有序的停止nginx);
- 使用命令:taskkill /f /t /im nginx.exe
我们使用nginx,一是用来做服务器,访问静态资源,二是做负载均衡。
负载均衡:
我们可以修改nginx的配置文件nginx.conf 达到访问nginx代理服务器时跳转到指定服务器的目的,即通过proxy_pass 配置请求转发地址,即当我们依然输入http://127.0.0.1:80 时,请求会跳转到我们配置的服务器。
#负载均衡
upstream target {
server localhost:8080 weight=1 max_fails=2 fail_timeout=600s;
#server 127.0.0.1:8081 weight=1 max_fails=2 fail_timeout=600s;
}
#代理服务器
server {
listen 80;
#不能同时代理同一台服务器(与上面的localhost不能一样)
server_name 127.0.0.1;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
#输入localhost:80后会跳转到上面的upstram target
proxy_pass http://target;
}
}
比如,我输入http:127.0.0.1:80/ls2017,实际访问的是http://localhost:8080/ls2017。
访问静态资源:
将静态资源(如jpg|png|css|js|html等)放在如下配置的E:/nginx-1.14.0/html目录下,然后在nginx配置文件中做如下配置(注意:静态资源配置只能放在 location / 中),浏览器中访问 http://localhost:80/index.html 即可访问到 E:/nginx-1.14.0/html目录下的 index.html。
#静态资源
server {
listen 80;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root E:/nginx-1.14.0/html;
index index.html;
}
}
根据应用上下文转发:
location / {
root html;
index index.html index.htm;
if ($request_uri ~* ^/sjbzgl(.*)$) {
set $bucketid $1;
proxy_pass http://10.111.30.10:8589/sjbzgl$bucketid;
}
if ($request_uri ~* ^/gtax(.*)$) {
set $bucketid $1;
proxy_pass http://10.111.30.75:8082/gtax$bucketid;
}
}