私のサイトは、zendアプリケーションの特定のディレクトリに仮想ホストを持っている必要があります。特定のディレクトリにあるApache仮想ホスト
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>
:
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
にこの行を追加:ユーザーがwww.example.com
に入ると、それは通常のドキュメントルートに行く必要がありますが、ユーザーがwww.example.com/cms
に移動したときにその.htaccess
ファイルは次のようであるそれは/var/www/cms/public
に行くべき
今すぐhttp://localhost/
は/var/www/cms/public
になり、すべてのものが動作します。私の質問は、上記のコードを変更して、http://localhost/
を通常のディレクトリルート(他のアプリケーションを使用できるようにする)にし、http://localhost/cms
を仮想ホストにするにはどうすればいいですか?
このコードを 'apache.conf'に追加します。現在は 'http:// localhost/cms /'が正しい場所を指していますが、 'http:// localhost/cms/member/login'のようなアプリケーションの他の部分は機能しません。 –
あなたは '/'ではなく '/ cms'に現在住んでいることをCMSに伝える必要があります。 –