2014-01-27 62 views
0

我有我自己的域的網絡空間 - 讓我們把它my-domain.com。我正在託管我的朋友網站 - 讓我們給她打電話給她的愛麗絲 - 我的網站空間子文件夾alice因此可以在my-domain.com/alice下聯繫。屏蔽轉發域沒有網絡空間域顯示

我的朋友愛麗絲決定自己買一個域名與轉發(但沒有網絡空間),並將其轉發到my-domain.com/alice URL。轉發工作正常,但她希望瀏覽器中的URL看起來像是託管在自己的網絡空間上的,例如,像這樣:alices-domain.com/start.html(而不是它現在的樣子:my-domain.com/alice/start.html)。

我找到方法來掩蓋域時,一個有成就的領域的網絡空間(例如,通過mod_rewrite) - 但在這種情況下,沒有網絡空間在那裏我可以把一個.htaccess文件(只是我自己的網站空間)。

有沒有一種方法我可以仍然實現掩蓋而不購買新的網絡空間的域?

+0

你是如何在你的服務器上創建Alice的網站的?是通過控制面板嗎?你創建了一個虛擬主機,還是將文件複製到一個目錄中並使用它? –

+0

我只是將文件複製到一個目錄中。 – CGee

+0

好吧,我的答案應該會讓你得到你需要的東西。 –

回答

1

如果只是複製文件到子文件,那麼你就需要將其設置爲virtual host在你的Apache配置文件,使您的服務器會知道,當你在她的域名鍵入去。 Vhosts通常朝向文件的底部。在centos它應該是httpd.conf或Ubuntu的apache2.conf我相信。

然後,只需創建Alice的網站的另一個部分。

例如

<VirtualHost *:80> 
    ServerAdmin [email protected] 
    DocumentRoot /var/www/path/to/alices/folder/ 
    ServerName www.alices-domain.com 
    ServerAlias alices-domain.com 
    ErrorLog /var/www/alices-domain.com/error.log 
    CustomLog /var/www/alices-domain.com/requests.log 
</VirtualHost> 

取消對Alice的域名轉發然後指向Alice的DNS主要A record到您的服務器的IP地址。

UPDATE:

要明確回答你的最後一個問題。 創建一個像alice.yousite.com這樣的子域,它將具有htdocs/alice的文檔根。

現在去的DNS記錄www.alice-site.com並添加CNAME。所述主機值將是www然後點(值)alice.yoursite.com

這樣傳播的時候,你可以去www.alice-site.com,它會顯示alice.yoursite.com

+0

我會試試看。但我沒有訪問httpd.conf,只有'.htaccess'文件(我正在使用在線webspace服務)。文檔說基本上所有的東西都可以在httpd.conf上工作,除了加載新的模塊。 VirtualHost是一個模塊嗎?我不知道。 – CGee

+0

不,這不適合我。在.htaccess文件中使用上述代碼片段(使用更改的參數)時,我的整個網站(所有部分)都會出現「內部錯誤」。 – CGee

+0

VirtualHost配置無法在htaccess中使用。您是否在託管計劃中運行控制面板? –