nginx代理单台服务器

目的:

  1. 在浏览器访问一个地址:www.dzf.com。
  2. Nginx接受上面的请求。
  3. 转发请求到tomcat。
  4. tomcat响应一个页面

1.安装nginx,并启动

2.安装Tomcat,并启动

3.浏览器访问nginx和Tomcat正常

alt

alt

4.域名配置

#修改本机此文件
C:\Windows\System32\drivers\etc\hosts

#添加以下格式的内容并保存
安装nginx服务器的ip  域名
192.168.81.10  www.dzf.com

alt

5.访问设置好的域名

  • 可以正常访问到nginx

alt

6.修改nginx配置文件

  • 备份配置文件
cp nginx.conf nginx.conf.bat

alt

  • 编辑配置文件
vim nginx.conf
  • 填入一下内容
server{
        listen 80;
        server_name www.dzf.com;
        location / {
                proxy_pass http://localhost:8080;
        }       
    }
    

alt

  • 重新加载配置文件
#在nginx启动目录执行
./nginx -s reload

7.再次访问域名

alt

nginx代理多台服务器

目的:

  1. 浏览器访问:(http://www.dzf.com:9001/beijing),通过nginx,跳转到一个tomcat上http://localhost:8081),在浏览器上显示:beijing。
  2. 浏览器访问:(http://www.dzf.com:9001/shanghai),通过nginx,跳转到一个tomcat上http://localhost:8082),在浏览器上显示:shanghai。

1.准备两个Tomcat

Tomcat官网

  • 创建一个目录存放两个Tomcat
cd /usr/local/
mkdir tomcat
  • 上传Tomcat文件,解压、修改名字并复制
cd tomcat/
tar -zxvf apache-tomcat-9.0.68.tar.gz
mv apache-tomcat-9.0.68 tomcat8081
cp -rf tomcat8081 tomcat8082

alt

  • 分别修改每个Tomcat的配置文件
#修改文件 /usr/local/tomcat/tomcat8081/conf/server.xml

#修改点1
<Server port="8005" shutdown="SHUTDOWN">
#分别修改为8015、8025
<Server port="8015" shutdown="SHUTDOWN">

#修改点2
 <Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />
#分别修改为8081、8082
 <Connector port="8081" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />
  • 分别启动两个Tomcat
cd /usr/local/tomcat/tomcat8082/bin
./startup.sh

注:如果之前配置过Tomcat环境变量,需要注掉环境变量并重启客户机,如果不注掉,不管在那个Tomcat下面启动都会启动已配置环境变量的Tomcat

  • 分别在两个tomcat下,的 index.html 中 修改 beijing和shanghai
cd /usr/local/tomcat/tomcat8081/webapps/
mkdir beijing
cd beijing
vim index.html
填入beijing
cd /usr/local/tomcat/tomcat8082/webapps/
mkdir shanghai
cd shanghai
vim index.html
填入shanghai

#查看
curl localhost:8081/beijing/index.html
curl localhost:8082/shanghai/index.html

alt

2.配置nginx

  • 修改nginx.conf
#填入一下内容
server{
        listen 9001;
        server_name www.dzf.com;
        location ~ /beijing/ {
                proxy_pass http://localhost:8081;
        }
        location ~ /shanghai/ {
                proxy_pass http://localhost:8082;
        }
    }

alt

  • 重启nginx
./nginx -s reload

3. 浏览器访问两个网址

alt

alt