白丁8864 2022-01-27 11:08 采纳率: 30.8%
浏览 152

nginx反向代理一段时间后竟然失效了

需求上需要iframe嵌入台州天气网的界面,于是配置了反向代理,源地址:http://www.tz121.com/index.php
nginx配置:

server {
    # 【*】部署端口 - 注意不要和别的端口冲突
    listen 20005;
    # 【*】应用名称 - 注意不要和别的应用冲突
    server_name tzyj_web;
    root  D:/strongsoft/02_main/Web;

     # 【*】防止页面嵌套
    #add_header X-Frame-Options SAMEORIGIN;
    #large_client_header_buffers 4 10m;
    add_header Access-Control-Allow-Origin *;
    add_header Access-Control-Allow-Methods 'GET, POST, OPTIONS';
    add_header Access-Control-Allow-Headers 'DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization';

    #文件最大大小
    client_max_body_size    1000m;

    # 天气信息
    location /tztq/ {
        proxy_set_header Accept-Encoding '';
        proxy_pass http://www.tz121.com/;
        sub_filter http://www.tz121.com/ /tztq/;
        sub_filter https://hm.baidu.com/ /hm_baidu/;
        sub_filter "http://webrd0{1-4}.is.autonavi.com/" "/webrd_0{1-4}/";
        sub_filter http://news.weather.com.cn /weather/;
        sub_filter_once off;
    }
    

    location / {
        proxy_set_header Host $http_host; 
        proxy_set_header X-Real-IP $remote_addr; 
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

        # 后台管理
        rewrite ^/admin   /pages/admin.html;

        # 展示页面
        rewrite ^[^\.]+$  /pages/index.html;

        # 默认定向
        #try_files $uri $uri/ /index.html;
    }
    
    # 以下用于进行重定向
    set $flag_second "0";

    # 判断请求是否从webapps.shui00.com/second这个地址发出的
    if ($http_referer ~* "http://122.226.177.37:8899/second/") {
        set $flag_second "${flag_second}1";
    }

    # 判断页面是否已经包含second这个虚拟目录了
    if ($request_uri !~* "second/") {
        set $flag_second "${flag_second}2";
    }

    # 如果请求不是get,不能用rewrite重定向,否则会导致请求变成get
    if ($request_method != GET) {
        set $flag_second "${flag_second}3";
    }

    # 将请求指向second这个虚拟目录
    if ($flag_second = "012") {
        rewrite ^(.*) $scheme://$host/second$1;
    }

    # 状态码307表示请求方法不变,页面会再次以post、delete、put发起请求
    if ($flag_second = "0123") {
        return 307 $scheme://$host/second$request_uri;
    }

出现的问题:
隔二十分钟左右,该代理就会失效,重启就能解决。

nginx报错:
2022/01/26 17:18:40 [error] 20296#19024: *473 connect() failed (10060: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond) while connecting to upstream, client: 172.26.222.122, server: tzyj_web, request: "GET /tztq/index.php HTTP/1.1", upstream: "http://36.134.58.187:80/index.php", host: "10.49.146.68:20005", referrer: "http://10.49.146.68:20005/17eh%22

  • 写回答

3条回答 默认 最新

  • 於黾 2022-01-27 11:22
    关注

    页面超时了,自动退出登录了

    评论

报告相同问题?

问题事件

  • 创建了问题 1月27日

悬赏问题

  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!
  • ¥15 drone 推送镜像时候 purge: true 推送完毕后没有删除对应的镜像,手动拷贝到服务器执行结果正确在样才能让指令自动执行成功删除对应镜像,如何解决?