这一定是一个常见问题,但我找不到合适的答案:
我的办公室局域网中运行的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
是默认设置。
有人可以帮忙吗?
答案 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正在监听。