2010-12-27 17 views
24

Aşağıdaki ayarları apache'de nasıl alabilirim?Apache çoklu DocumentRoot

http://server/ABC/*/var/www/ABC/*

http://server/PQR/* tarafından sunulması gerektiğini /var/www/PQR/*

/var/www/Others/index.php tarafından sunulması gerektiğini Diğer tüm istek (tek bir dosya) tarafından sunulmalıdır.

sayesinde apache dağıtımının bir parçası olan Sen mod_alias modülü ile yapabilirsiniz

JP

+2

Sorunuzun ilk kısmı için: [Diğer] (http://httpd.apache.org/docs/current/mod/mod_alias.html#alias) (Alias ​​/ ABC/var/www/ABC 'vb.) DocumentRoot öğesinin/var/www/Others/ – plundra

cevap

1

. mod_rewrite'ın kullanacağı tek bir dosya ile her şeyi sunmak için

http://httpd.apache.org/docs/current/mod/mod_alias.html

. Bu, birçok özelliğe sahiptir ve ihtiyaçlarınıza bağlı o ince ayar gerekebilir .. ama böyle bir şey çalışması gerekir:

RewriteEngine on 
RewriteRule ^(.*)$ /index.php?path=$1 [L] 

Eğer belge kök bir .htaccess dosyasına koymak olacaktır.

+0

olarak işaretlenmesi Belge kökünü index.php'ye işaret eder, ancak apache'yi yeniden başlatırken uyarılar verir, ancak * çalışır *. Mod_rewrite veya Tabers önerisini kullanıp kullanmayacağımı düşünüyorum. –

23

Kullanım Alias:

Alias /ABC/ /var/www/ABC/ 
Alias /PQR/ /var/www/PQR/ 

/var/www/Others/index.php belge kök işaret bırakın. Bu hile yapabilir. :)

+0

Bu,// ​​başka bir dizine işaret etmek için kullanılabilir mi? Örneğin. Alias ​​//var/www/wordpress/'? – crmpicco