无效的命令“重写引擎”

Posted

技术标签:

【中文标题】无效的命令“重写引擎”【英文标题】:Invalid Command 'ReWriteEngine' 【发布时间】:2013-06-26 21:43:43 【问题描述】:

首先,在有人发布此链接之前,我会告诉您我已经查看了它并尝试了它所说的无济于事。 .htaccess: Invalid command 'RewriteEngine', perhaps misspelled or defined by a module not included in the server configuration

我在一个网站上使用 Codeigniter,并试图摆脱 URL 中的 index.php。此代码已添加到我网站根目录中的 .htaccess 文件中。

 RewriteEngine on
 RewriteCond $1 !^(index\.php|images|robots\.txt)
 RewriteRule ^(.*)$ /index.php/$1 [L]

当我测试它时,我得到一个 500 内部服务器错误。检查错误日志是说“无效命令'RewriteEngine'”。在启用 mods 的文件夹中列出了 rewrite.load。另外,我在启用重写后重新启动了 Apache。

花了几个小时解决这个问题,但仍然遇到同样的问题。提前致谢。

.htaccess 代码来源:http://ellislab.com/codeigniter/user-guide/general/urls.html

【问题讨论】:

启用 mod_rewrite 后是否记得重启 Apache? 【参考方案1】:

"Invalid Command 'Rewrite Engine'"

确定这里的“重写”和“引擎”之间没有空格吗? htaccess 语法在涉及空白时不是很宽容,拥有“重写引擎”肯定会破坏它。

【讨论】:

阳性,即直接从文件中复制而来,该文件最初是从 codeigniter 的网站复制而来的。只是为了确定,虽然我刚刚检查过。 我必须同意 +Jon Lin 的观点,即包含空格的错误听起来很奇怪,并且可能说明正在发生的事情。虽然如果你检查了 .htaccess 文件,我不确定还能告诉你去哪里看。【参考方案2】:

启动 Apache 时出错,修复后一切正常。无论如何感谢您的帮助。

【讨论】:

以上是关于无效的命令“重写引擎”的主要内容,如果未能解决你的问题,请参考以下文章

WordPress 中的 .htaccess 错误:此处不允许重写引擎

.htaccess 中的重写引擎以捕获不以 html 结尾的文件

htaccess 重写以包含 #!

htaccess 重写以包含 #!

两个 mod 重写规则

.htaccess 重写一个 url,而不是另一个