我在 Rackspace 云服务器(Ubuntu 12.04 LTS)上安装了 Apache 和 Phusion Passenger,但由于某种原因,我无法从外部机器访问它。
我从本地服务器得到了正确的响应:
root@ttt:/opt# wget http://beta2012.ttt.com/
--2012-09-26 03:12:42-- http://beta2012.ttt.com/
Resolving beta2012.ttt.com (beta2012.ttt.com)... 198.101.xx.xx
Connecting to beta2012.ttt.com (beta2012.ttt.com)|198.101.xx.xx|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 9365 (9.1K) [text/html]
Saving to: `index.html'
而从我的本地机器和另一台服务器,我得到以下信息:
root@server:/opt# wget http://beta2012.ttt.com/
--2012-09-26 10:13:42-- http://beta2012.ttt.com/
Resolving beta2012.ttt.com... 198.101.xx.xx
Connecting to beta2012.ttt.com|198.101.xx.xx|:80... failed: Connection timed out.
Retrying.
我可以看到 A 记录一定在工作,因为我得到了正确的 IP。为什么 Apache 响应本地查询,但不响应远程查询?
这是一个全新安装,除了 Apache、MySQL 服务器、Git 和 RVM 之外,服务器上几乎没有其他东西。
谢谢。
答案1
事实证明,Rackspace 默认在新的云服务器上阻止所有端口(显然除了 SSH 的 22 端口)。
我必须修改 iptables 以允许端口 80、443 等上的流量。