Apache-2.2

向伺服器添加域和子域

  • December 12, 2014

問候,如果這是一個非常基本的問題,請原諒。

問題:

目前我已經從Godaddy.com購買了一個域 (crazywebsite.com),並且我在 Site5.com 中有一個非託管 VPS。

我在我的Debian 機器上的Site5.com中設置了一個LAMP 堆棧(Debian、Apache2、MySQL、PHP Laravel) ,目前我的 IP 和網站看起來和可訪問如下:

292.168.0.1./website (Just an example IP)
292.168.0.1./forum

問題:

我怎樣才能實現以下目標?

crazywebsite.com => 292.168.0.1./website

forum.crazywebsite.com => 292.168.0.1./forum

因此,當您記下我購買的域名時,您會看到網站的內容(當然不是通過 IP 連結訪問它)。

任何想法或連結如何做到這一點?

目前我已經嘗試了以下方法:

在以下位置添加設置:

/etc/apache2/sites-available/default

到:

# website
<VirtualHost *:80>                                                              
    ServerName crazywebsite.com                                                                      
    ServerAlias crazywebsite.com                                                   
    DocumentRoot /var/www/website                                       
</VirtualHost>

<VirtualHost *:80>                                                              
    ServerName www.crazywebsite.com                                                                      
    ServerAlias www.crazywebsite.com                                                   
    DocumentRoot /var/www/website                                       
</VirtualHost>

# forum
<VirtualHost *:80>                                                              
    ServerName forum.crazywebsite.com                                                                      
    ServerAlias forum.crazywebsite.com                                                   
    DocumentRoot /var/www/forum                                       
</VirtualHost>

<VirtualHost *:80>                                                              
    ServerName www.forum.crazywebsite.com                                                                      
    ServerAlias www.forum.crazywebsite.com                                                   
    DocumentRoot /var/www/forum                                       
</VirtualHost>

提前謝謝你!

編輯:

正如@Sven 所建議的那樣,我在 GoDaddy.com 上製作了我的 A 記錄。誰能確認這是正確的?我為名稱伺服器(無論如何)創建了兩個域 NS1 和 NS2,以及一個我將需要作為子域的“推薦”。 在此處輸入圖像描述

我是否需要在我的 Debian 伺服器上進行任何其他設置(如 BIND9 等?)或者我只需要等到 DNS 更新。

編輯:

這些設置已經生效。現在我唯一的問題是我不能將http://crazywebsite.com指向 123.456.789.000/mywebsite。相反,它始終顯示根文件夾“/”。有什麼建議麼?

您需要添加 DNS 記錄

  • crazywebsite.com
  • www.crazywebsite,com
  • 論壇…
  • www.forum…

到您在 GoDaddy 控制中心的 DNS 區域,例如帶有Acrazywebsite.com 的記錄和CNAME其他所有內容的 s,指向crazywebsite.com(但四個A記錄也可以)。

您應該執行以下操作,而不是為每個站點添加兩個虛擬主機 (/website/forum):

<VirtualHost *:80>                                                              
    ServerName  crazywebsite.com                                                                      
    ServerAlias www.crazywebsite.com                                                   
    DocumentRoot /var/www/website                                       
</VirtualHost>

# forum
<VirtualHost *:80>                                                              
    ServerName forum.crazywebsite.com                                                                      
    ServerAlias www.forum.crazywebsite.com                                                   
    DocumentRoot /var/www/forum                                       
</VirtualHost>

Sven 建議添加“forum”和“www”記錄,指向您的 Site5 VPS。您需要這些,而不是“ns1”和“ns2”——GoDaddy 目前是您的名稱伺服器,所以不必擔心自己的 DNS。

Sven 建議的 Apache 配置是完全足夠的。您幾乎可以肯定已經在您的 ports.conf 中:

NameVirtualHost *:80

引用自:https://serverfault.com/questions/651792