Domain-Name-System

如何設置具有單獨的 Web 主機和域註冊器的子域?

  • May 10, 2012

我在網上查看了各種解決方案,但一無所獲。我不能向虛擬主機尋求幫助,因為它不是我的主機帳戶;我正在為客戶設置它。我的客戶通過一些域名註冊商擁有域名,並通過 iPower 獲得網路託管。例如,假設他們的域名是domain.com. 我想以sub.domain.com透明domain.com/sub的方式指出(以便訪問者鍵入sub.domain.com並且他們的地址欄將繼續顯示為域,從不明顯切換到domain.com/sub)。

沒有的工具:

  • 訪問 httpd.conf
  • 對託管伺服器的 SSH 訪問
  • 聯繫 iPower 支持的能力,因為我沒有權限訪問他們在送出支持票時要求我提供的資訊(計費和安全問題)

我有的工具**:**

  • 間接訪問域名註冊商的控制面板(我向管理員發送了一封電子郵件,他根據我的意願對其進行了更改,但他對網路或 DNS 或任何東西一無所知)
  • 訪問 iPower 主機控制面板
  • 訪問 .htaccess 文件
  • 對 iPower public_html 目錄和所有子目錄的 FTP 訪問

域名註冊商的控制面板提供了設置 CNAME、MX 記錄、A 記錄等的常用功能。iPower 託管控制面板在其域控制面板中也有一種域的“幽靈”,儘管它告訴我域在其他地方註冊,它允許我輸入諸如 DNS 記錄和子域之類的內容。

到目前為止,我已經在註冊商上設置了一個域,其中有一條指向伺服器 IP 地址的 A 記錄。我嘗試在 iPower 端設置類似的 A 記錄,但無濟於事。與子域和 CNAME 相同。它只會將請求sub.domain.com直接發送到 public_html 文件夾中的文件(與顯示的內容相同domain.com。我嘗試了此處提供的 mod_rewrite 規則,但似乎沒有效果。我也嘗試了此處提供的 mod_rewrite 規則,但它帶來了我嘗試時出現 500 伺服器錯誤(我確定我修改錯誤,但我不知道我做錯了什麼)。當我有相應的 A 記錄在 iPower 域控制面板中配置的子域,它不會將訪問者定向到根站點,而是顯示一個頁面,上面寫著“目錄沒有索引文件。禁止瀏覽沒有索引文件的站點或目錄。” 即使該文件夾中索引文件。該文件夾中有很多文件(Drupal 安裝),domain.com/sub直接訪問會生成工作網站。

所以。說了這麼多,有沒有人有任何直接的指示讓我遵循?請記住,我只能訪問 .htaccess 文件和域控制面板,但無法訪問 Apache .conf 文件,因此我無法執行 ServerAlias 之類的操作。

我知道這不應該這麼複雜,但是我從我發現的適用於我的情況的任何指示或文章中嘗試過的任何方法都沒有幫助。

遇到這個問題我有點尷尬,因為多年來我擁有自己的多個域和子域的虛擬主機——但我已經被 cPanel 的做事方式寵壞了,我的域和文件被託管和在同一個地方管理。我可以用幾種不同的語言編寫程式碼,我可以修復損壞的電腦和其他技術,但我不知道如何配置網路伺服器。挫折。

提前感謝您的幫助和建議。我經常通過在這個問答網站網路上到處搜尋和潛伏來找到我需要的答案,但在這種情況下,我顯然錯過了一些東西。

1)只是一個註釋。沒有註冊商的幫助,您無法設置 sub.domain.com,除非 domain.com 執行您自己的 DNS 伺服器。但是,我理解它已經完成了。

  1. 必須在現有的 Apache httpd.conf 中的東西,否則你不走運:

a) 啟用重寫引擎。b) Apache 接受對 sub.domain.com 的請求

如果這兩件事都可以,那麼我想你應該可以通過 .htaccess 像這樣重寫:

RewriteEngine On

RewriteCond %{HTTP_HOST}  domain.com [NC]
RewriteCond %{HTTP_HOST}  !^$
RewriteRule ^/sub(.*) http://sub.domain.com/$1 [R=301,L]

詳細資訊可能會有​​所不同,具體取決於您的基礎網頁為站點 URL 配置的內容以及您是否要使用單個 sub.domain 或更多等。

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