1

我在我的机器上启用了基本的虚拟主机设置,当我输入服务器名称时它工作正常。但是,当我包含“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”行时,一切正常。当我把它放回去时,它会破裂。如果我有一些奇怪的规则,我可以理解,但简单地打开它不应该破坏任何东西。

4

2 回答 2

0

也许您的设置中没有启用 mod_rewrite?您可以尝试将 RewriteEngine On 放在这样的测试中

<IfModule mod_rewrite.c>
    RewriteEngine On
</IfModule>
于 2013-05-08T04:35:05.643 回答
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。

于 2019-09-05T20:08:39.840 回答