nginx 安装与使用

nginx 在 Windows 下的安装

1. 先到 nginx 官网(https://nginx.org/en/download.html)下载压缩包,我们选择中间的稳定版本进行下载,上面是主线版本,下面是历史版本。

2. 下载完然后解压,接着运行解压文件夹下的 nginx.exe 应用程序(或者通过 cmd 在 nginx 目录下执行 start nginx 命令), 我们就能在任务管理器中看到启动了 nginx 进程。启动完后我们在浏览器访问 http://localhost:80 就能看到 nginx 的欢迎界面。

3. 这里值得一提的是刚开始我运行 nginx.exe 时并没有运行成功,只是闪一下然后任务管理器里面并不能看到 nginx 进程。接着去 nginx 主目录下 logs 文件夹里面的 error.log 查看错误日志,才发现启动端口也就是本地的 80 端口已经被占用了,因为我电脑启动了 apache 服务把 80 端口占用了,所以我把 apache 服务停止后就能运行成功了。当然也可以到 nginx 主目录下的 conf 文件夹里面的 nginx.conf 文件里面把端口配置改一下再启动 nginx。虽然启动时还是闪一下,但是任务管理器里面就能看到 nginx 进程了,这时就可以访问到 nginx 的 Welcome 页面了。想要关闭 nginx 时,可以到任务管理器中关闭进程,也可以到 cmd 的 nginx 目录下执行 nginx -s quit 命令关闭。

nginx 的配置与使用

nginx 的目录结构与 apache 的类似,关于 nginx 的相关配置基本都在 conf 目录下的 nginx.conf 文件里面配置。我们打开 nginx.conf 文件能看到 nginx 的所有配置属性基本都在里面出现了,只是大部分被注释掉了。我们看配置属性的名字也能大概知道它的作用,接下来我们只进行主要的配置,让 nginx 能和 tomcat 组合使用。

在我们配置过程中,我们需要重新启动 nginx 来加载配置。如果我们一直关闭又启动 nginx 会很麻烦,我们可以到 cmd 的 nginx 目录下执行 nginx -s reload 命令来重启 nginx 加载配置。

1. 首先是静态资源服务器 nginx 的配置,我们在 server 区域块中配置服务器。

  • listen 用于配置监听端口。
  • server_name 用于配置服务器名字也就是域名(当然该域名指向 nginx 服务器 IP,当使用该域名访问时,会到该配置下匹配,此属性主要用于当 nginx 服务器存在多个域名时)。
  • location 用于配置 url 与所对应的文件,location 后面匹配访问的 url,配置文件中初始是 /。
  • root 是用于设置访问时的根目录,初始默认是 html,那么当 url 匹配到 / 时找资源会以 html 目录为根目录。比如访问 /css 就会到 html 根目录下找 css 目录下的资源(这里刚开始理了比较久,测试了很多遍才懂这个访问寻找机制。location 后的 url 用于匹配访问 url,然后会到 root 配置的根目录下找资源,记住找资源时不会去掉匹配 url,仍然需要通过已匹配的 url 来寻找。也就是说当 location 后面设置为 /static、root 设置为 html 时,当我们访问 /static/static.html 时,/static 匹配成功,会以 root 根目录 html 为起点,然后继续通过 url 寻找其下的 static 目录的 static.html 文件,而不是寻找根目录下的 static.html 文件。当我们在动态资源中读取 css、js 等静态资源时,也要遵循这个规则)。
  • index 用于指定默认资源,当 url 匹配成功且后面没有指定资源时,会默认加载该资源。我们在后面加个 index2.html,并把改 html 放到 html 目录下,当我们访问 http://localhost:80 时,就会自动加载该 html 文件。当 index2.html 找不到时,才会继续找后面的
  • error_page 用于配置错误页面,当访问出现后面错误代码时,会转到最后的 html。

2. 接下来与 Tomcat 整合,即配置动态资源。location 后面设置动态资源 url 匹配,proxy_pass 后面配置 Tomcat 的访问路径。那么当我们 url 匹配到 /apache_demo 时,就会将该 url 转发到 Tomcat 服务器上。 

3. 上面只可以配置一个 Tomcat 服务器,当我们为了高可用性和负载均衡时,我们可以通过使用 upstream 配置块来同时配置多个 Tomcat 服务器。先在 server 块外面配置 upstream 块,upstream 后面设置名字,然后在里面使用 server 来设置各个 Tomcat 服务器的 IP 和端口。配置好 upstream 块后,到 server 块里面配置 location,通过 upstream 的名字把 proxy_pass 指向该 upstream。当访问 url 匹配到该 location 的 url 即 /apache_demo 时,会把 url 均衡地转发给 upstream 中的各个 Tomcat 服务器。

 

4. 接着我们启动三个分别为 8080、8081、8082 端口的本地 Tomcat。当我们 url 与 /apache_demo 匹配成功时会轮流转发到不同的 Tomcat 上。并且我们可以在 Tomcat 的 jsp 页面上访问到部署在 nginx 上的静态资源,不过注意访问静态资源的 url 需要遵守 nginx 上配置静态资源的 location 的匹配规则 。

想要了解更多 nginx 配置的可以到该链接查看(https://blog.csdn.net/qq_33454884/article/details/89212702),此处做个记录,以后要进一步使用 nginx 时可查看。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值