簡體   English   中英

Apache 2.4通配符子域虛擬主機

[英]Apache 2.4 Wildcard Subdomain Virtual Host

我的目標是發生以下情況,當用戶訪問左側的下面的站點時,會將它們帶到右側的目錄:

www.example.com or example.com  =>  /var/www/example/public_html/

*.example.com                   => /var/www/example/public_html/sites/%1/public_html/

我嘗試了以下方法:

NameVirtualHost *:80

<VirtualHost *:80>
    ServerName example.com
    ServerAlias www.example.com
    DocumentRoot /var/www/example/public_html
</VirtualHost>

<VirtualHost *:80>
    ServerAlias *.example.com
    VirtualDocumentRoot /var/www/example/public_html/sites/%1/public_html
</VirtualHost>

主域可以使用www,也可以不使用www,但是每次嘗試訪問任何其他子域時,它都會帶我到500內部服務器錯誤。 輸入子域時,URL變為如下所示:

{subdomain}.example.com/sites/{subdomain}/public_html/

我使用的是Apache 2.4.7,是的,我已經在DNS服務器上設置了WildCard。 我想對任何答案都表示感謝,因為我一直在試圖將牆壁砸向牆壁兩個星期,以使其正常工作。

我認為您要尋找的配置與此非常相似:

NameVirtualHost *:80

<VirtualHost *:80>
  ServerName example.com
  ServerAlias www.example.com
  DocumentRoot /var/www/example/public_html
</VirtualHost>

<VirtualHost *:80>
  ServerName *.example.com
  ServerAlias *.example.com
  DocumentRoot /var/www/wildcardexample/public_html
</VirtualHost>

你覺得呢? 在這種情況下,任何子域都將重定向到同一站點。 這是您想要的配置嗎? 或者您想要每個子域不同的配置?

好的,整個問題出在通配符目錄位於另一個已綁定目錄下。 我在其他地方建立目錄后,它開始按預期工作,請嘗試一下...

希望這對碰巧遇到這個奇怪錯誤的其他人有所幫助... ^ _ ^

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM