PayPal 80 以外的端口上的 IPN

2022-08-31 01:09:51

有没有人尝试过在80以外的端口上使用PayPal的IPN?

我正在尝试指定一个像 http://domain.com:8080/url/to/ipn.php 这样的URL,但IPN请求没有通过。

如果我直接从浏览器中点击URL,它工作正常。


答案 1

在进行了多次测试后,我能够确认PayPal的通知URL/notify_url不能包含非标准端口号。

这些网址将起作用:

http://my.website.com:80/ipnpage.aspx
https://my.website.com:443/ipnpage.aspx

这些将不起作用:

http://my.website.com:81/ipnpage.aspx
https://my.website.com:82/ipnpage.aspx

答案 2

如果你有nginx服务器可以通过ssh访问它,那么你可以这样做:

启动 ssh 反向代理:

ssh -Nvv -o TCPKeepAlive=yes -R 3000:localhost:3000 username@your-server.com

添加 nginx 配置以在端口 80 上代理端口 3000:

server {
    listen       80;
    server_name  your-app.your-server.com;

    location / {
      proxy_pass          http://localhost:3000;
      proxy_set_header    Host             $host;
      proxy_set_header    X-Real-IP        $remote_addr;
      proxy_set_header    X-Forwarded-For  $proxy_add_x_forwarded_for;
      proxy_set_header    X-Client-Verify  SUCCESS;
      proxy_read_timeout 1800;
      proxy_connect_timeout 1800;
    }
}

推荐