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