Вопрос

Кто-нибудь пытался использовать IPN PayPal на порту, кроме 80?

Я пытаюсь указать URL, как http://domain.com:80808/url/to/ipn.php. Но запрос IPN не проходит.

Если я ударю URL прямо из моего браузера, он работает нормально.

Это было полезно?

Решение

Если у вас есть сервер Nginx с возможностью доступа к нему SSH, вы можете сделать:

Начать SSH обратный прокси:

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

Добавить Nginx Config в прокси порт 3000 на порту 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;
    }
}

Другие советы

После выполнения нескольких тестов я смог подтвердить, что URL уведомления PayPal URL / Notify_URL не может содержать нестандартный номер порта.

Эти 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
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top