我一直在努力建立部署在Amazon EC2中的Rails服务器,并使用Route 53访问它。
我在Route 53控制台中为students.aalizwel.com
创建了一个简单的记录集
使用亚马逊的名称服务器映射我的注册商名称服务器。
以下是截图。
我的Rails服务器在Amazon EC2中使用弹性IP运行,如上所述
在记录集students.aalizwel.com
。
我像往常一样启动了服务器:
~/aalizwel$ rails s
Digest::Digest is deprecated; use Digest
=> Booting WEBrick
=> Rails 3.2.19 application starting in development on http://0.0.0.0:3000
=> Call with -d to detach
=> Ctrl-C to shutdown server
....
以下是我面临的问题:
aalizwel.com
。students.aalizwel.com
但无法访问rails服务器
网址http://students.aalizwel.com:3000
有人可以帮我解决我可能出错的地方吗?
答案 0 :(得分:1)
无法ping aalizwel.com
你不能ping它,因为该名称没有A记录,只有SOA。
; <<>> DiG 9.8.3-P1 <<>> aalizwel.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 41528
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0
;; QUESTION SECTION:
;aalizwel.com. IN A
;; AUTHORITY SECTION:
aalizwel.com. 899 IN SOA ns-1191.awsdns-20.org. awsdns-hostmaster.amazon.com. 1 7200 900 1209600 86400
;; Query time: 161 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Tue Sep 16 09:02:16 2014
;; MSG SIZE rcvd: 112
能够ping the students.aalizwel.com但无法通过网址http://students.aalizwel.com:3000
访问rails服务器
在端口80上运行nginx服务器:
HTTP/1.1 200 OK
Server: nginx/1.6.1
Date: Tue, 16 Sep 2014 07:03:04 GMT
Content-Type: text/html
Content-Length: 612
Last-Modified: Tue, 05 Aug 2014 11:18:35 GMT
Connection: keep-alive
ETag: "53e0bd8b-264"
Accept-Ranges: bytes
您可能需要运行Rails应用程序,以便从nginx服务器代理到运行实例的端口3000。我猜测端口3000在防火墙处被阻止,这将是EC2实例的标准默认行为,除非您更改防火墙规则。
考虑使用Rails运行nginx作为反向代理 - 您应该提供有关您最喜欢的搜索引擎的文章,提供指导。