栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

他来了,他来了,你们要的最全Nginx教程终于来了,深入理解java虚拟机第三版电子书

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

他来了,他来了,你们要的最全Nginx教程终于来了,深入理解java虚拟机第三版电子书

  1. nginx 官网下载 nginx ,官网地址: https://nginx.org/download/;

  2. 将压缩包拖到服务器上;

  3. 使用命令 tar -xvf nginx-1.12.2.tar.gz 解压压缩包;

  4. 使用命令 ./configure 检查;

  5. 使用命令 make && make isntall 编译安装;

安装成功后,在 usr 会多出来一个文件夹, local/nginx ,在 nginx 的 sbin 文件夹下有启动脚本。

=================================================================

2.4 启动nginx

===============

在 /usr/local/nginx/sbin 文件夹下,使用以下命令启动

./nginx

然后浏览器访问服务器ip, nginx 默认端口是80,出现以下页面则证明 nginx 安装成功;

2.5 Nginx常用的命令

==================

使用这些命令时需要进入 /usr/local/nginx/sbin 文件夹

  • 查看 nginx 的版本号

./nginx -v

  • 启动 nginx

./nginx

  • 关闭 nginx

./nginx -s stop

  • 重新加载 nginx

./nginx -s reload

2.6 Nginx的配置文件

==================

nginx 的配置文件在 /usr/local/nginx/conf 中的 nginx.conf 。我们将 nginx.conf 中注释的内容删除一下。

#user nobody;

worker_processes 1;

#pid logs/nginx.pid;

events {

worker_connections 1024;

}http {

include mime.types;

default_type application/octet-stream;

sendfile on;

#tcp_nopush on;

#keepalive_timeout 0;

keepalive_timeout 65;

#gzip on;

server {

listen 80;

server_name localhost;

location / {

root html;

index index.html index.htm;

} }}

nginx 的配置文件包含三部门。

1.全局块

=========

从配置文件开始到 events 块之间的内容,主要会设置一些 nginx 服务器整体运行的配置指令。

worker_processes 1;

这个代表 nginx 处理并发的关键配置,值越大,处理并发能力越强。但是会受到硬件、软件等约束。

2.events块

=============

《一线大厂Java面试题解析+后端开发学习笔记+最新架构讲解视频+实战项目源码讲义》

【docs.qq.com/doc/DSmxTbFJ1cmN1R2dB】 完整内容开源分享

events 块涉及的指令主要影响 nginx 服务器与用户网络的连接。

worker_connections 1024;

这个代表 nginx 支持的最大连接数。

3.http全局块

=============

nginx 服务器配置最频繁的部分。 http 全局块包含 http块 和 server块 。

三 Nginx配置反向代理

=================

3.1 ngix代理流程

================

本地浏览器访问 nginx 服务器, nginx 服务器反向代理 tomcat 服务器,当我们请求 nginx的时候直接访问到 tomcat 。 tomcat 的安装这里就不再讲了,我将 tomcat 和 nginx 安装在了同一台服务器上。

3.2 配置ip和域名的绑定关系

====================

由于我们的 nginx 没有域名,为了演示,因此我们在本地 host 文件中配置 nginx 服务器ip和域名进行绑定。这个 host 文件的具体位置在 C:WindowsSystem32driversetc 。在host文件中增加一句配置:

47.104.xxx.xxx www.javatrip.com

前面的ip是服务器的ip地址,后面的域名是我随便起的用于绑定这个ip的一个域名。配置好之后,我们使用域名访问一下tomcat,如果能请求到 omcat 默认页面,则配置成功。

3.3 在nginx配置请求转发

====================

server {

listen 80;

server_name localhost;

location / {

root html;

index index.html index.htm;

} }

我们将以上默认的配置文件做个修改:

server {

listen 80;

server_name 47.104.xxx.xxx;

location / {

root html;

proxy_pass http://127.0.0.1:8080;

index index.html index.htm;

}}

以上这段配置的意思就是请求是 47.104.xxx.xxx:80 ,都会转发至 47.104.xxx.xxx:8080 。

现在浏览器访问www.javatrip.com,发现直接转发到了 tomcat 上了,这样简单的反向代理就完成了。

3.4 根据请求后缀分发

================

我们再解压一个 tomcat ,端口号设置为8081,分别在两个 tomcat 下 webapps 目录下面新建dev 和 prod 目录,然后在该目录下写一个文件。

将请求 www.javatrip.com:7001/dev 转发到 tomcat8080 ,将请求 www.javatrip.com:7001/prod 转发到 tomcat8081 。现在我们的 nginx 监听的端口号是7001。打开 nginx 的配置文件,新建一个 server 如下:

server {

listen 7001;

server_name 47.104.xxx.xxx;

location ~ /dev/ {

proxy_pass http://127.0.0.1:8080;

} location ~ /prod/ {

proxy_pass http://127.0.0.1:8081;

}}

然后试试效果,分别访问`www.javatrip.com:7001/dev/a.html和www.javatrip.com:7001/prod/a.html,效果如下:

其中,配置转发的时候用到了~,其含义内容如下:

nginx

四 Nginx配置负载均衡

=================

4.1 什么是负载均衡

===============

负载均衡(Load Balance),意思是将负载(工作任务,访问请求)进行平衡、分摊到多个操作单元(服务器,组件)上进行执行。是解决高性能,单点故障(高可用),扩展性(水平伸缩)的终极解决方案。

======================================================================================================

现在我们想实现的效果是通过访问www.javatrip.com:7001/prod/a.html,将请求分别分发到两个tomcat上面去,首先我们在 tomcat8080 上新建一个 prod 的文件夹,里面放一个 a.html 的文件。这样 tomcat8081 和 tomcat8080 两个上就都有了一个 prod 的文件夹且里面有一个 a.html的文件。

4.2 配置nginx.conf

====================

首先,在 http块 中配置两个 tomcat 的服务列表

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/682016.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号