Apache RewriteEngine无法使用虚拟主机设置

时间:2013-01-27 04:05:16

标签: mod-rewrite apache

我在我的机器上启用了基本的虚拟主机设置,当我输入服务器名称时它可以正常工作。但是,当我包含“RewriteEngine On”时,它会杀死它。是的,我确实安装了重写模块,是的,我已经重新启动了apache。我实际上并没有尝试任何重写规则,因为只是将事情转变为足以让它停止工作。关于发生了什么的任何线索?似乎如果包含该模块,这应该工作。我忘记了什么?这是我在虚拟主机文件中的内容

NameVirtualHost *:80
<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    DocumentRoot "C:/www/mysite/public/"
    ServerName mysite

    RewriteEngine on
    <Directory "C:/www/mysite/public/"
        Options Indexes FollowSymLinks
        AllowOverride all
        Order Deny,Allow
        Allow from all
    </Directory>
</VirtualHost>

当我删除“RewriteEngine on”行时,一切正常。当我把它放回去时,它会断裂。我可以理解我是否有一些奇怪的规则,但只是打开它不应该破坏任何东西。

2 个答案:

答案 0 :(得分:0)

您的设置中可能未启用mod_rewrite?你可以尝试将RewriteEngine放在一个类似的测试中

<IfModule mod_rewrite.c>
    RewriteEngine On
</IfModule>

答案 1 :(得分:0)

我假设您是一个类似Ubuntu的系统。

转到/etc/apache2/sites-available/your_site.conf

使用您喜欢的文本编辑器打开your_site.conf。

如下所示添加/更新目录部分

<Directory /var/www/>
    Options Indexes FollowSymLinks
    AllowOverride All
    Require all granted
</Directory>

保存并重新启动apache。