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