无法从Internet访问apache

时间:2015-03-03 16:20:21

标签: apache ubuntu-14.04 firewall

这一定是一个常见问题,但我找不到合适的答案:

我的办公室局域网中运行的apache服务器上有一个网站。我可以查看所有计算机的页面(甚至是通过Wifi的智能手机)。

所有计算机都连接到支持端口转发的路由器(带有静态IP)。

我将路由器端口8080转发到内部IP 192.168.1.5:80,即apache框(xubuntu 14.04)。

问题在于,当我尝试从互联网上查看该网站时,我总是得到connection refused响应。我尝试了http://www.canyouseeme.org,但响应仍然相同。当我尝试使用LAN-> Internet-> Router-> Apache或直接从家庭Internet-> Router-> Apache时,会发生这种情况。 我知道(相当怀疑)路由完成了它的工作,因为如果我点击外部静态IP:80我进入其界面,而当我点击IP:8080时,我得到connection refused响应。 Canyouseeme同意(它等待密码时超时)。

有趣(?)的事情是我没有安装防火墙,apache2.conf是默认设置。

有人可以帮忙吗?

1 个答案:

答案 0 :(得分:0)

最后一切都清楚了;我的ISP不允许设置路由器防火墙,所以我做的每个设置都是无效的。

因此,首先要确保您的ISP真正转发您的端口。

但是我无法启动我的网站(zoneminder应用),所以我写下解决方案以防其他人发现它有用:

首先,我假设Apache运行时没有出现默认设置问题。如果您想创建一个站点(在您的系统中,您可以看到目录)作为您的apache服务器的根站点,您必须创建一个"规则"对于apache:

首先通过执行

复制位于000-default.conf目录中的/etc/apache2/sites-available/文件(在Ubuntu系统中)
sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/mysite.conf

mysite.conf文件将是虚拟主机的设置,您需要相应地添加/更改内容:

DocumentRoot /my/site/directory
    <Directory />
         Options FollowSymLinks
         AllowOverride None
    </Directory>
    <Directory /my/site/directory/>
         Options Indexes FollowSymLinks MultiViews
         AllowOverride None
         Order allow,deny
         Allow from all
    </Directory>

不要忘记通过编辑/etc/apache2/ports.conf来改变(如果需要)端口apache正在监听。