我想在虛擬主機配置中添加mod_rewrite規則,但它不工作。 對於「mysite.com」網站,我想將「/ webmedia /」重定向到主頁。虛擬主機配置中的mod_rewrite
以下是我有:
<VirtualHost 192.168.100.142:80>
ServerAdmin [email protected]
DocumentRoot /home/drupal_1
ServerName mysite.com
ServerAlias www.mysite.com
Alias /movies /home/movies/
ErrorLog /var/log/httpd/mysite.com_err_log
CustomLog /var/log/httpd/mysite.com_log special
<Directory /home/drupal_1>
Options FollowSymLinks Includes ExecCGI
AllowOverride All
DirectoryIndex index.html index.htm index.php
# Rewrite Rules #####################
RewriteEngine On
RewriteRule ^/webmedia/(.*)/[R=301,L]
# end Rewrite Rules #################
</Directory>
<Directory /home/movies>
Options FollowSymLinks Includes ExecCGI
AllowOverride All
DirectoryIndex index.html index.htm index.php
</Directory>
</VirtualHost>
爲什麼不將規則移動到'.htaccess'文件?這將更容易管理,因爲您不必在每次修改後重新啓動Apache。 – 2012-04-16 14:01:20
.htaccess文件越來越大,我聽說服務器從vhosts文件中讀取它會更有效率。那是對的嗎? – EricP 2012-04-16 14:03:10
是的,Apache可能_faster_沒有'AllowOverride All',因爲它不會在每個請求中讀取您的.htaccess文件。我猜這裏的表現收益很小。你現在在'.htaccess'中有什麼大的? – 2012-04-16 14:06:23