下記でVirtualDocumentRootを使ってPHP環境を作りましたが、apacheの環境変数的には変わってないようで、デフォルトの値が入ってしまいます。(CentOS 6.6に入っているapache 2.2.15で確認しているので新しいのでは治ってるかも)

Macに複数サイトに対応したPHP環境を簡単に作る - komagata

すごく困るんですが、下記のようにPHPで無理やり書き換えればOK。

<virtualhost *:80>
    VirtualDocumentRoot /srv/%0

    # Ref: http://joshbenner.me/blog/quick-tip-get-proper-document-root-when-using-mod-vhost-alias/
    php_admin_value auto_prepend_file /srv/set_docroot_hack.php
</virtualhost>
<directory /srv/*>
    Order allow,deny
    Allow from all
</directory>

/srv/set_docroot_hack.php:


<?php
$_SERVER['DOCUMENT_ROOT'] = str_replace($_SERVER['SCRIPT_NAME'], '', $_SERVER['SCRIPT_FILENAME']);

なんか危ういですね。

phpの読み込みはコメントアウトされてるので外す。

# /etc/apache2/httpd.conf:
LoadModule php5_module libexec/apache2/libphp5.so

VirtualHostの設定の読み込みがデフォルトでコメントアウトされてるので外す。(罠)

# /etc/apache2/httpd.conf:
Include /private/etc/apache2/extra/httpd-vhosts.conf

Web共有は無くなったのでapachectlを使う。

% sudo apachectl restart