Если вы хотите отладить свой IPN-код, вам нужно каким-то образом сделать ваш сервер общедоступным.Это сделано для того, чтобы PayPal мог асинхронно отправлять сообщения на ваш сервер позднее, после того как вы отправили запрос.Я думаю, что обычно это довольно быстро (в течение 15 секунд), но может быть и дольше.
Один простой способ сделать сервер разработки общедоступным - использовать ngrok или forwardhq.com .Это позволяет вам продолжать разработку в вашей среде IDE, как обычно, и запускать код в режиме отладки.Когда PayPal отправляет сообщения обратно на конечную точку, вы можете отладить ее прямо в вашей IDE.Эти услуги завершают это для вас, так что это очень легко сделать без каких-либо технических ноу-хау.
Насколько я понимаю, это делается с помощью "обратного туннеля SSH", который позволяет сделать ваш сайт общедоступным, передав его через прокси-сервер, который уже является общедоступным.Обратите внимание, что прежде чем сделать это, вы должны учесть, что не только PayPal может попасть на ваш сайт, как только он станет общедоступным, но и любой может, поэтому, пожалуйста, примите это во внимание в первую очередь.
Также,если у вас есть собственный общедоступный домен и вы не возражаете поиграться в терминале с SSH, вы, возможно, можете сделать что-то вроде этого сценария оболочки ( скопировано из этой сущности )
# Usage: show <local-port> <subdomain>
function show() {
DOMAIN=".yourdomain.com"
REMOTE="$2$DOMAIN"
ssh -tR 1080:127.0.0.1:$1 vps "sudo ssh -Nl \$USER -L $REMOTE:80:127.0.0.1:1080 localhost"
}
Чтобы это работало, как указано выше, вам нужно поместить в файл ~ / .ssh / config следующее:
Host vps
HostName <server address>
User <server username>
Если вы не хотите (или не можете), тогда будет работать следующее:
SERVERUSER="<server username>"
ssh -l $SERVERUSER -tR 1080:127.0.0.1:$1 <server address> "sudo ssh -Nl \$SERVERUSER -L $REMOTE:80:127.0.0.1:1080 localhost"