PayPal IPN on port other than 80

Posted on

PayPal IPN on port other than 80 – Here in this article, we will share some of the most common and frequently asked about PHP problem in programming with detailed answers and code samples. There’s nothing quite so frustrating as being faced with PHP errors and being unable to figure out what is preventing your website from functioning as it should like php and paypal . If you have an existing PHP-based website or application that is experiencing performance issues, let’s get thinking about PayPal IPN on port other than 80.

Has anybody tried using Paypal’s IPN on a port other than 80?

I’m trying to specify a URL like http://domain.com:8080/url/to/ipn.php but the IPN request isn’t getting through.

If I hit the URL directly from my browser it works fine.

Solution :

After doing multiple tests I was able to confirm that PayPal’s Notification URL/notify_url can not contain a non-standard port number.

These urls will work:

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

These will not work:

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

If you have nginx server with possibility to access to it by ssh, then you can do:

Start ssh reverse proxy:

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

Add nginx config to proxy a port 3000 on port 80:

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;
    }
}

Leave a Reply

Your email address will not be published. Required fields are marked *