Мне нужно, чтобы на моем сайте был виртуальный хост в определенном каталоге для моего приложения Zend. Когда пользователь вводит www.example.com
, он должен перейти к обычному корню документа, но когда пользователь переходит к www.example.com/cms
, он должен перейти к /var/www/cms/public
, его файл .htaccess
выглядит следующим образом:
SetEnv APPLICATION_ENV development
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]
На локальном хосте я добавил эти строки в /etc/apache/httpd-vhosts.conf
:
NameVirtualHost *:80
<VirtualHost *:80>
DocumentRoot "/var/www/cms/public"
ServerName persian_literature
# This should be omitted in the production environment
SetEnv APPLICATION_ENV development
<Directory "/var/www/cms/public">
Options Indexes MultiViews FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
Теперь http://localhost/
переходит к /var/www/cms/public
, и все работает. Мой вопрос заключается в том, как изменить код выше, чтобы заставить http://localhost/
быть обычным корневым каталогом (чтобы я мог использовать другие приложения), а http://localhost/cms
- виртуальным хостом?