我應該如何設定 nginx 配置以使用帶有 CNAME 主機記錄的子網域?

我應該如何設定 nginx 配置以使用帶有 CNAME 主機記錄的子網域?

運行 Debian 11。

我應該如何使用 CNAME DNS 記錄將子網域新增至我的網站?我的網站目錄位於 /var/www/ ,我想知道是否可以在該目錄中為子網域建立子目錄。

即 /var/www/domain-dir/subdomain-dir

我可以將子網域 server_name 新增到我的網站可用設定檔中嗎?

我不想建立大量 A/AAAA 記錄來指向我的子網域,因為它可能會變得混亂,因為我稍後可能會建立更多子網域,blog.example.com、git.example.com 等。

抱歉,如果這篇文章很長,我是新手,不知道如何使其更簡潔!

答案1

rootnginx 中的實際目錄可以是任何目錄,您只需在子網域的虛擬主機中正確設定指令即可。

我建議為每個虛擬主機建立一個完全獨立的目錄,例如:

/var/www/example.com
/var/www/sub.example.com

如果您的目錄中有子網域文件,則可能會出現重複內容問題,因為相同的內容在和/var/www/example.com/subdomain處可用。http://sub.example.comhttp://example.com/subdomain

答案2

  1. 將子網域新增為相同伺服器設定檔中的條目,並將子網域指向包含子網域檔案的特定檔案路徑。建立子目錄應該可以。https://stackoverflow.com/questions/17568981/nginx-two-subdomain-configuration

  2. 使用您的 DNS 提供者更新 cname。

您可以使用 nginx -t 檢查文件中的語法。

相關內容