暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

基于Nginx和tomcat的正向代理和反向代理详解

IT那活儿 2023-02-27
1815

点击上方“IT那活儿”公众号,关注后了解更多内容,不管IT什么活儿,干就完了!!!




Nginx概念及安装



1. Nginx概念

Nginx是一款轻量级的 Web 服务器。通常用在反向代理、负载均衡和 HTTP 缓存,是一个反向代理服务器软件。

正向代理是隐藏真实客户,反向代理是隐藏真实客户端。

环境准备:

--虚拟机的版本:VMware-workstation-full-15.5.6-16341506.exe
--系统镜像版本:CentOS-7-x86_64-Minimal-1810.iso
--系统内存大小:1GB
--系统硬盘大小:100GB
--Nginx版本:nginx-1.22.0.tar.gz
2. Nginx的安装
2.1 安装必要工具和依赖使用
yum -y install wget gcc gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel命令安装
2.2 下载源码包使用
cd /usr/local/src && wget https://nginx.org/download/nginx-1.22.0.tar.gz命令下载
(下载安装目录是sur目录下的local/src包。)
2.3 解压源码包
使用tar xf nginx-1.22.0.tar.gz命令。
:如果没有网络的情况下,可以下载好离线包上传到对应的目录。)
2.4 重命名解压好的源码包使用
mv nginx-1.22.0 nginx命令解压
:因为有时候解压源码包命名不是nginx-1.22.0的名字所有为方便使用更改名字。)
2.5 指定安装配置文件使用
cd /usr/local/src/nginx && ./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
执行完毕后,会显示类似如下的信息,表示成功。
2.6 编译安装包和配置文件使用
cd /usr/local/src/nginx && make命令编译
显示如下信息并未报错:
2.7 安装nginx服务使用
cd /usr/local/src/nginx && make install命令安装

安装成功后查看nginx是否成功安装启动使用nginx -s reload 命令查看:

2.8  开启nginx服务的默认80端口访问权限使用
firewall-cmd --zone=public --add-port=80/tcp --permanent && firewall-cmd --reload 命令执行
2.9 安装配置nginx成功然后测试访问nginx的欢迎页面
在本地浏览器输入http://ip,这个ip是指nginx所在的服务器的ip地址,可以看到下面的欢迎界面。
安装成功!



搭建Tomcat服务



1. 概述

Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。

环境准备:

--虚拟机的版本:VMware-workstation-full-15.5.6-16341506.exe
--系统镜像版本:CentOS-7-x86_64-Minimal-1810.iso
--系统内存大小:1GB
--系统硬盘大小:100GB
--Tomcat版本:tomcat-7.0.76-16.el7_9.noarch
2.  tomcat的安装
2.1 安装tomcat命令使用
(使用yum命令安装是缺少tomcat的主页的,和官网下的区别是yum命令把tomcat的主页删掉了tomcat主页。)
2.2 查看tomcat是否安装成功
使用rpm -qa | grep tomcat命令查看。
成功安装:
2.3 安装完毕之后启动tomcat服务
2.4 查看tomcat服务的运行状态使用systemctl status tomcat命令
成功运行的状态:
2.5 访问tomcat主页
在本地浏览器输入tomcat所在服务器的ip地址加上8080端口,打开成功页面

:一定要加上后面的8080端口号,这个是tomcat默认端口号。




搭建nginx正向代理



1. 概述

正向代理,指的是通过代理服务器 代理浏览器/客户端去重定向请求访问到目标服务器的一种代理服务。

正向代理服务的特点是代理服务器 代理的对象是浏览器/客户端,也就是对于目标服务器 来说浏览器/客户端是隐藏的。

准备环境:

--192.168.120.130:正向代理
--192.168.120.130:客户端(内网服务器)
--CentOS-7-x86_64-Minimal-1810.iso
--关闭防火墙

注:一定要关闭防火墙)

2. 搭建步骤
2.1 开始部署正向代理服务器操作
查看是否启动nginx服务使用:ps -ef|grep nginx命令检测nginx服务是否正常运行。
:如果没有启动,请在nginx的sbin目录里面使用./nginx命令启动nginx服务。)
2.2 找到nginx的.conf配置文件的所在地
使用cd usr/local/nginx/conf命令找到nginx.conf配置文件使用vim命令编辑nginx.conf文件。
:nginx.conf位置是在你刚开始安装的目录下。)
2.3 更改设置http正向代理
在http下面的server里面设置端口为80端口server_name本服务器ip,在locatio/里面设置准备跳转的浏览地址使用:wq保存设置。
2.4 使用nginx -t 检查nginx.conf配置是否正确
:nginx-t 是检查是否语法正确,如果不正确那他会显示出来。)
2.5 使用 nginx -s reload重启
2.6 使用ifconfig查看本机IP地址
因为设置的是本机IP地址,所以要使用本机IP地址来代理。
2.7 打开本地浏览器
使用http://ip地址:80端口打开设置代理浏览器,正向代理成功




搭建nginx反向代理



1. 概述

反向代理方式是指以代理服务器来接受Internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给Internet上请求连接的客户端,此时代理服务器对外就表现为一个服务器。

准备环境:

--192.168.120.130:反向代理
--192.168.120.130:客户端(内网服务器)
--CentOS-7-x86_64-Minimal-1810.iso
--关闭防火墙
注:一定要关闭防火墙)
2. 反向代理搭建步骤
2.1 找到nginx的.conf配置文件的所在地
使用cd usr/local/nginx/conf命令找到nginx.conf配置文件使用vim命令编辑nginx.conf文件。
2.2 新建目录
在nginx安装目录conf目录项目新建一个vhost目录,然后在vhost目录下新建配置文件文件名需要以.conf来结尾。
2.3 使用vim配置vhost里面的.conf配置文件

使用:wq保存。

--Server_name配置自己的域名; 
--proxy_pass是反向代理配置;
--access_log用来指定日至文件的路径及使用的何种日志格式记录日志。
2.4 在conf里面配置nginx.conf的配置
在http的节点上配置include vhost/*.conf路径信息。
2.5 使用nginx -t查看nginx配置是否正常
2.6 使用nginx -s reload来重新启动nginx命令
重新启动tomcat命令:
2.7 在本地浏览器输入www.xuemingzhuo.cn来反向代理tomcat主页
测试成功:

操作过程中遇到的问题FAQ:

1)inux安装启动tomcat之后浏览器无法访问
解决方法:确定tomcat是否启动着,即在工作,然后查看端口对不对,是不是端口被占用,若被占用在server.xml中修改访问的端口。
2)在linux中安装了 nginx 使用 ps -ef | grep nginx可以查找到
如果我想重新加载一次,会提示我找不到nginx命令。

解决方法:直接修改vi/etc/profile命令在配置中加

export NGINX_HOME=/usr/local/nginx
export PATH=$PATH:$NGINX_HOME/sbin这2个参数就OK了。

END


本文作者:孟俊宏(上海新炬中北团队)

本文来源:“IT那活儿”公众号


文章转载自IT那活儿,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论