可在少数本地机器上访问

可在少数本地机器上访问

我有一台连接到路由器的服务器,它装有 ubuntu 12.04。它已安装好 apache/mysql/php,随时可以使用。文件夹结构如下:

/var/www -- this isnt the root
-/libs
-/logs
-/public - this is the root
-/vhosts - all subdomains go here

我在 vhosts 中有一个名为 mysite 的文件夹。我进入 /etc/apache2/sites-available 并创建了一个文件,内容如下 -> (虚拟主机文件)并且我还在 /etc/hosts 文件中添加了一个条目,其中包含:127.0.1.1 mysite.dev,并且我还做了

sudo a2ensite mysite

我尝试通过 mysite.dev 和我们的公共 IP 从计算机访问网站,但无法查看。当我尝试我们的公共 IP 时,上述结构中的公共目录确实显示在所有计算机上。但对于在 vhosts 中添加的任何内容,网站都不会显示。没有附加域名,只有我们的 IP。我尝试在 sites-available 中的 mysite 文件中将端口从 80 更改为 9999,并尝试了 myip:9999,但这也没有用。我做错了什么?

编辑:我忘了提到服务器在路由器上是 dmzed。

答案1

可在少数本地机器上访问

如果你想我的网站仅在几台本地机器上工作,你总是可以编辑他们的/etc/hosts文件。Windows 也有你可以编辑的 hosts 文件,它们位于C:\Windows\System32\drivers\etc\hosts

在您想要设置能够访问 mysite.dev 的计算机上的 hosts 文件中,只需将其添加到其底部(Windows 和 Linux 均适用):

SERVERIP mysite.dev www.mysite.dev

在哪里更换服务器IP使用运行 Apache 的服务器的本地 IP 地址。

可在整个本地网络上访问

如果您希望它在您的本地网络上运行,您将需要一个 DNS 服务器并配置网络 DHCP 服务器,以便您的本地机器通过您的服务器执行所有 DNS 查询。

首先,让我们安装绑定

sudo apt-get install bind9

然后我们需要开始配置绑定并添加 DNS 区域,在本例中为我的网站. 首先编辑您的/etc/bind/named.conf.local文件并向其中添加以下块:

zone "mysite.dev" {
    type master;
    file "/etc/bind/zones/mysite.dev;
}

然后,创建目录/etc/bind/zones

sudo mkdir /etc/bind/zones

现在,让我们添加区域文件我的网站域。创建并编辑文件/etc/bind/zones/mysite.dev并添加以下内容:

$ORIGIN . ; -*- zone -*-
$TTL 600    ; 10 minutes
mysite.dev          IN SOA  YOURSERVERNAME. hostmaster.mysite.dev. (
                    2012102300 ; serial
                    6H         ; refresh
                    30M        ; retry
                    4W         ; expire
                    10M        ; minimum (10 minutes)
                )
                NS  YOURSERVERNAME.
                A   YOURSERVERIP

$ORIGIN mysite.dev.
www         A   YOURSERVERIP

现在仔细看看这里。你需要改变以下两个您的服务器名称以及两次发生的你的服务器IP引用与您的服务器匹配的那些。例如服务器01.本地10.0.0.2。要查找您的服务器名称,请hostname -f在服务器的终端窗口中输入。

如果你要更改此区域文件中的任何内容(例如稍后添加子域名等),你必须记得更新序列号. 在这种情况下2012102300。必须将该值设置为更高的值,例如2012102301

重新启动绑定服务,sudo service bind9 restart并且 DNS 服务器应该已为您的域启动并运行。dig @localhost mysite.dev在跳到下一步之前,您可能应该通过从服务器本身运行来测试这一点。您还可以使用 ,从网络上的客户端计算机进行测试dig @YOURSERVERIP mysite.dev,其中你的服务器IP是您的服务器的 IP 地址。

现在,您需要做的最后一件事是更新您的 DHCP 服务器配置,并将您的本地服务器设置为(如果可能的话,设置为辅助)DNS 服务器。遗憾的是,我无法轻松帮助您完成此操作。

可通过互联网访问

由于没有顶级域名.dev,ICANN 有必要创建这个。目前他们的 gTLD 申请系统已关闭,但也许将来某个时候可以申请 .dev TLD。请注意,他们可能需要一大笔钱。

相关内容