Назад | Перейти на главную страницу

Сопоставление разных ServerPath с разными DocumentRoot с одним и тем же адресом

Я использую сервер Apache в интрасети, чтобы предоставить доступ к отчетам. Я хочу с тем же именем сервера сопоставить путь сервера к другому корневому каталогу документов, который является общим файловым ресурсом.

Возможно ли это с VirtualHost?

<VirtualHost *:80>
    ServerPath /path1
    DocumentRoot remote-share
    ServerName servername
</VirtualHost>

<VirtualHost *:80>
    ServerPath /path2
    DocumentRoot remote-share
    ServerName servername
</VirtualHost> 

<Directory /path1>
    Options Indexes
</Directory>

<Directory /path2>
    Options Indexes
</Directory>

В этом случае путь1 работает, но переопределяет путь2, поэтому путь2 никогда не работает - вероятно, потому что это один и тот же виртуальный хост, - но опять же, мне нужен один и тот же адрес, только разные подпапки, сопоставленные с разными DocumentRoots.

Вы можете попробовать использовать mod_alias и Alias директива

<VirtualHost *:80>
  ServerName servername
  DocumentRoot /dummy/path
  Alias /path1 /path/to/mounted/fs/path1
  Alias /path2 /path/to/other/fs/path2
</VirtualHost>

Видеть http://httpd.apache.org/docs/2.2/mod/mod_alias.html#alias для подробностей.