Mod rewrite已启用,但在Apache中不起作用

Mod rewrite已启用,但在Apache中不起作用,apache,mod-rewrite,virtualhost,Apache,Mod Rewrite,Virtualhost,我目前在工作中使用运行Mavericks的iMac进行开发。我使用Apache的内置版本,在我第一次得到这台机器时使用自制软件安装了MySQL。最近我遇到了一个问题,我的一个虚拟主机没有按预期工作,我最终使用virtual Host X的restore命令清除我的虚拟主机并重新启动 我设法让我的vhost再次工作,但从那以后我注意到mod_rewrite虽然启用了,但没有工作。如果我去,我会得到一个错误 找不到-在此服务器上找不到请求的URL/事件。但是如果我去查看页面,那就好了 我认为使用虚拟

我目前在工作中使用运行Mavericks的iMac进行开发。我使用Apache的内置版本,在我第一次得到这台机器时使用自制软件安装了MySQL。最近我遇到了一个问题,我的一个虚拟主机没有按预期工作,我最终使用virtual Host X的restore命令清除我的虚拟主机并重新启动

我设法让我的vhost再次工作,但从那以后我注意到mod_rewrite虽然启用了,但没有工作。如果我去,我会得到一个错误 找不到-在此服务器上找不到请求的URL/事件。但是如果我去查看页面,那就好了

我认为使用虚拟主机X进行恢复可能损坏了Apache设置中的某些内容,因为restore命令确实有以下警告:

备份文件包含所有VirtualHostX数据以及web配置文件的副本。恢复备份将用以前备份的数据替换这些文件和当前数据虚拟主机、域详细信息等

这是一份我的vhost设置副本,用于我遇到问题的一个站点:

Options FollowSymLinks
AllowOverride None
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule !\.(js|ico|gif|jpg|png|css|ttf|woff)$ /index.php
我第一次在山狮上遇到这个问题,但后来升级到小牛队,希望它能解决这个问题,但没有用


任何帮助都会很好。如果这个问题不能很容易解决,任何人都可以就如何彻底摆脱Apache并重新启动机器提出建议。

这应该在Debian Apache2中使用:

Options FollowSymLinks
AllowOverride None
RewriteEngine on
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_FILENAME} !-f
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_FILENAME} !-d
RewriteRule !\.(js|ico|gif|jpg|png|css|ttf|woff)$ /index.php [L]

谢谢你的回答,但不幸的是没有成功。不过,我很高兴地说,问题现已解决。我粘贴了你的代码,它完全停止了我的虚拟主机的运行。我需要将我的原始代码粘贴回去,以便在Stack Overflow中复制并粘贴回本文中的代码,然后重新启动Apache。我点击了几个链接,现在重写工作开始了

我猜是有一些隐藏的字符导致了这个问题,当我把代码粘贴回去时,这些字符被删除了


我希望这能帮助一些人,因为这很烦人。

它完全阻止了我的虚拟主机运行。这很奇怪。