mod_evhost必須能夠從提交主機的部件找出一個文檔根目錄。它不能猜測三種選擇,也不能試圖找出哪一種存在(尤其是如果多於一種不經意地這樣做)。
您將不得不在主機名中給mod_evhost足夠的信息來明確地選出一條路徑,否則您將不得不在文件系統中至少進行一級重定向。
選項1:
evhost.path-pattern = vhosts_dir + "/%2.%1/public/"
這會丟失您想要捕獲的所有客戶/商店/公司信息,但實際上它使mod_evhost可以工作。
選項2:您可以根據需要拆分目錄,和指向一個包含指向這些目錄的鏈接的目錄。 FS具有可見的結構,mod_evhost只需猜測重定向到結構中的鏈接的名稱即可。
directory_containing_links/
foo.bar -> ./customers/foo.bar/public/
foo.baz -> ./customershops/foo.baz/public/
foo.qux -> ./company/foo.qux/public/
quux.bar -> ./customershops/quux.bar/public/
quux.baz -> ./customers/quux.baz/public/
(and so on, with one link per site)
directory_containing_sites/
company/foo.qux/public/(web site here)
customers/foo.bar/public/(web site here)
customers/quux.baz/public/(web site here)
customershops/foo.baz/public/(web site here)
customershops/quux.bar/public/(web site here)
然後你的evhost模式是
evhost.path-pattern = directory_containing_links + "/%2.%1/"
請注意,directory_containing_links和directory_containing_sites可以是同一個目錄。
選項2看起來很有趣。要檢查出來。我在其他服務器上使用選項1,它的功能就像一個魅力。 – 2010-10-27 06:44:42
非常感謝Eric – 2010-10-27 06:45:21