(六)在Linux系统中实现简单的反向代理

Linux反向代理
  1. 首先我们先在Linux上安装nginx

  2. 具体步骤 [点这里]

  3. . 这里在提几句 nginx相关命令

  4. 重载或停止nginx

    (1) 编辑nginx.conf文件后重启nginx:nginx -s reload

    (2) 完整停止nginx:nginx -s quit 此方式是待nginx处理完任务后再停止nginx

    (3) 快速停止nginx:nginx -s stop 此方式是直接kill掉nginx进程

  5. 先确保我们的机器上安装有 tomcat 以及有java运行环境,
    这里 有更加详细的安装方法哦!

  6. 具体安装方法 点这里哦

  7. 然后确认安装完成 ,进入在这里插入图片描述
    之后我们可以启动nginx 进入到 欢迎 - welcome 页面
    在这里插入图片描述

  8. 这样我们可以确保我们的Tomcat 与 nginx 是完好的
    接下来该我们操作了 哈哈 !!!

  9. 进入我们安装 nginx的路径

 [root@localhost /]# cd /usr/local/nginx/conf/nginx.conf
bash: cd: /usr/local/nginx/conf/nginx.conf: 不是目录
[root@localhost /]# cd /usr/local/nginx/conf
[root@localhost conf]# vi nginx.conf

  1. 配置server块中的 代码
 server {
        listen       80;
        server_name  192.168.61.129; //虚拟机的ip,即为我们的访问地址

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
        proxy_pass http://192.168.61.129:8080; //代理的地址
            root   html;
            index  index.html index.htm;
                #代理的连接超时时间(单位:毫秒)
                proxy_connect_timeout 600;
                #代理的读取资源超时时间(单位:毫秒)
                proxy_read_timeout 600;
        }

  1. wq! 保存退出 ,修改后重启nginx
[root@localhost conf]# nginx -s reload
  1. 在浏览器中输入 我们的nginx访问地址,就可以访问我们的Tomcat了,
    这样一个简单 的反向代理就完成了
  2. 配置完工 ,谢谢大家!!!

操作过程中大家可能遇到的问题:

  • . linux安装启动tomcat之后浏览器无法访问
    • (1).首先确定tomcat是否启动着,即在工作,然后查看端口对不对,是不是端口被占用,若被占用在server.xml中修改访问的端口

    • (2).还有就是我这个问题,根据提示查看是不是防火墙没关的问题,linux服务器要被外界访问需要关闭防火墙,注意,不是你电脑本机的防火墙,是服务器的防火墙,关闭之后才可以访问,我的是在虚拟机上运行的,所以我在虚拟机中关闭服务器的防火墙

    • (3).这个和linux系统也有关系,不同的系统不同的版本关闭防火墙的方式都不一样,我装的是centos7,在虚拟机中执行如下命令

    • sysstem stop firewalld

    • (4)之后最好重启tomcat

    • (5)解决完成

  • .-bash: nginx: 未找到命令 (command not found) 解决方案
    • (1) 在linux中安装了 nginx ,并按照网上教程 进行启动
      如: ps -ef | grep nginx 可以查看到
      在这里插入图片描述

    • (2) 我就想重新加载一次

      如:提示我找不到 nginx 命令

      -c参数指定了要加载的nginx配置文件路径

      /usr/local/nginx/conf/nginx.conf 是nginx的配置路径

    • (3) 如果问题还未解决:
      [root@zxc sbin]# nginx -s reload
      -bash: nginx: command not found

    • (4) 继续:
      我们可以直接Nginx的路径配置到系统变量中,配完需要重启系统----后来发现使配置文件生效不需要重启系统
      只需要输入 source /etc/profile 让配置文件重新生效一下即可
      特此记录 !!!!!

    • (5)修改 vi /etc/profile
      在后边加入:

#nginx
    export NGINX_HOME=/usr/local/nginx
    export PATH=$PATH:$NGINX_HOME/sbin
  • 重启系统后再次进行测试 ,在根目录下再次执行命令,发现没有消息返回,说明已经成功了
    • 还有就是我们可以强制关闭它 :
    • 查询nginx主进程号

ps -ef | grep nginx

  从容停止   kill -QUIT 主进程号

  快速停止   kill -TERM 主进程号

  强制停止   kill -9 nginx

若nginx.conf配置了pid文件路径,如果没有,则在logs目录下

 kill -信号类型 '/usr/local/nginx/logs/nginx.pid
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值