【发布时间】:2019-06-03 13:06:02
【问题描述】:
直到昨天/今天午夜,一切都运行良好。但是今天我们无法从位于孟买 (ap-south-1) 的 ec2 实例访问 shopify REST api。 dns 正确解析到 shopify 商店:
[ec2-user@ip-172-31-12-194 ~]$ dig turms.myshopify.com
; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.68.rc1.58.amzn1 <<>> turms.myshopify.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 52296
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;turms.myshopify.com. IN A
;; ANSWER SECTION:
turms.myshopify.com. 30 IN CNAME shops.myshopify.com.
shops.myshopify.com. 8 IN A 23.227.63.64
;; Query time: 0 msec
;; SERVER: 172.31.0.2#53(172.31.0.2)
;; WHEN: Sat Jun 1 06:13:17 2019
;; MSG SIZE rcvd: 73
去商店购买任何 REST api 都行不通:
[ec2-user@ip-172-31-12-194 ~]$ curl -vX GET https://turms.myshopify.com/admin/api/2019-04/orders/metafieldId/metafields.json -H 'Accept: */*' -H 'Authorization: Basic Auth'
Note: Unnecessary use of -X or --request, GET is already inferred.
* Trying 23.227.63.64...
* TCP_NODELAY set
* connect to 23.227.63.64 port 443 failed: Connection timed out
* Failed to connect to turms.myshopify.com port 443: Connection timed out
* Closing connection 0
curl: (7) Failed to connect to turms.myshopify.com port 443: Connection timed out
为什么 shopify 调用在 ec2 实例内部失败?到目前为止,重新启动服务器、刷新缓存和启动新机器都没有给我任何结果。任何帮助表示赞赏。
更新: 在 us-east 实例中不存在此问题。因此,我们创建了一个代理实例,通过代理服务器从我们的应用程序中路由 shopify 调用。这不是一个长期的解决方案,我们仍在寻找答案。
【问题讨论】:
-
可能是 Shopify 正在阻止 IP 地址范围以防止抓取。您需要询问 Shopify。
-
我问过shopify,他们说这是aws问题,其他一些客户也有同样的问题。但他们无法给出解决方案:(
标签: amazon-ec2 shopify amazon-elastic-beanstalk