我需要我的網站在我的zend應用程序的特定目錄上擁有虛擬主機。當用戶進入www.example.com
應該去正規的文檔根目錄,但是當用戶瀏覽到www.example.com/cms
它應該去/var/www/cms/public
其其.htaccess
文件是這樣的:特定目錄上的Apache虛擬主機
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]
localhost上添加此行/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
成爲虛擬主機?
我將該代碼添加到'apache.conf'。現在'http:// localhost/cms /'指向正確的位置,但是應用程序的其他部分,比如'http:// localhost/cms/member/login'不起作用。 –
你必須告訴cms它現在生活在'/ cms'中,而不是'/'。 –