Dot-Htaccess

如何設置 DNS 以使用包羅萬象的地址?

  • August 27, 2010

這不是一個真正的程式問題,它更多的是關於我可以在視覺上改變的設置。

我已經購買了一個域,並且想知道如何讓它工作,以使 .example.com 之前的所有內容(除了我已經設置的內容(如 pop.example.com))都被轉發到 www.example。 com(或 *.example.com)。

所以像這樣的東西:

  • pop.example.com
  • ftp.example.com
  • my.example.com

轉到相應的 URL,但是:

  • idontknowwhattheurlwas.example.com
  • ivemistypedsomething.example.com
  • bla.example.com
  • 123.example.com

www.example.com 的別名。

在 DNS 配置中添加規則的選項有:

  • 一種
  • 年年
  • MX
  • TXT
  • CNAME
  • SRV

或者也許最好用.htaccess 來做這件事?如果是這樣,我應該如何配置它?

你需要兩個:

在 DNS 區域設置中的條目(最後一個,最好的)

*.your_domain.foo.  IN  A   999.999.999.999 # correct this csi-like ip

域中的最後一個點非常重要。

這將使 any.your_domain.foo 與您的 IP 匹配。您可以在之前放置其他子域/ ip 的其他條目。

在 apache / 其他 web 伺服器中,您必須設置一個虛擬主機或其他東西來處理所有請求,並將 ServerAlias / ServerName 設置為

ServerAlias *.your_domain.foo

再次將此虛擬主機放在最後,在預設虛擬主機之前定義 your_domain.foo 中的任何現有虛擬主機。

Apache 使用 ascii 有序方案載入配置文件,因此將其放在一個099_default文件中並在其他前面添加050_

在您的情況下,DNS 應該允許您使用*.yourdomain.foo.區域內定義,我認為您可以使用 mod_rewrite 來歸檔 apache 部分(如果已啟用)。我認為有一些方法可以模擬虛擬主機,使用以SERVER_NAME變數為條件的重寫。檢查http://httpd.apache.org/docs/2.3/rewrite/vhosts.html。我沒試過。

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