【问题标题】:Django cartridge paypal return url not workingDjango 墨盒 paypal 返回网址不起作用
【发布时间】:2016-01-22 19:00:52
【问题描述】:
问题
我一直在关注this 使用贝宝实现 Django 墨盒的教程。
一切都托管在 AWS 上。至少使用沙盒帐户一切正常。除了返回 url,当我付款并点击链接返回商店时,我被重定向到我的完整页面,只是我的主机名更改为我的亚马逊实例内部 IP 地址。
发现
当创建对 Paypal 的请求表单时,返回 url 字段使用来自 Django 的 request.get_host() 的值进行初始化。问题是 AWS 使用他们自己的负载平衡,因此返回了机器的地址。我已经尝试在设置中启用 USE_X_FORWARDED_HOST 但它仍然不起作用。
【问题讨论】:
标签:
django
amazon-web-services
paypal
mezzanine
cartridge
【解决方案1】:
找到解决方案!!!
所以找到了解决方案here.基本上因为VPS本身对AWS中的外部世界一无所知,您需要手动修改站点主机名。要么使用 SQL 修改表中的字段,要么使用 Django shell。
>>> from django.contrib.sites.models import Site
>>> website = Site.objects.all()[0] #or choose the website you need
>>> one.domain = 'myveryspecialdomain.com'
>>> one.save()
将正确的主机名添加到请求之后。