網站強制啟用htpps銀行回寫問題

問題描述

網站最初未強制啟用htpps,使用http、https都能訪問。銀行回寫支付結果的地址,設置的是http協議地址。各銀行設置方法不一。
啟用強制https訪問時,未考慮銀行回寫問題,導致支付結果未能正常被serlet接收。

解決方案:

Nginx中,匹配銀行通知規則不強制跳轉https

server {
        listen       80;
        server_name  xxx.xxx.com;
        charset utf-8;
       if ($request_method ~* HEAD|DELETE|PUT) {
            return 403;
        }
       location / {
            return 301 https://$server_name$request_uri;
        }
        location ^~ /xxx/pay/notify {
            proxy_connect_timeout 1;
            proxy_pass http://ufshop;
            proxy_buffering off;
            proxy_redirect default;
            proxy_set_header Host $http_host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header REMOTE-HOST $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-NginX-Proxy true;
            add_header X-Frame-options SAMEORIGIN;
        }
}
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容