所以我试图让我的新网站mod_rewrite工作。 几年前,我已经成功地使用了mod_rewrite,但这次在'RewriteEngine On'之后没有一个单独的命令。
我在我的本地Apache 2.2上获得与我的Web主机服务器上完全相同的效果,所以不是服务器没有configuration为mod_rewrite。 我的本地机器运行Windows,而远程服务器是Linux,所以它们是相当独立的系统。 以下是我为本地主机检查的内容:
但。 RewriteEngine On后没有input任何结果! 我可以在那里写废话,没有错误信息。 我已经把很多命令作为一个testing,但即使这个.htaccess文件也没有做任何事情:
RewriteEngine On RewriteRule ^.*$ test.html [R]
这应该重写每一个页面我去成为test.html不应该呢? 然而,什么都没有发生 – 如果我去hello.html,我只是得到一个网页,说没有findhello.html。
请有人提出一个build议,接下来要做什么?
Linuxconfiguration文件(包括Apacheconfiguration文件)要求最后一行为空。 最后一个换行符之后的所有内容都将被忽略。
难以置信。 经过几天的努力,这个工作,我突然发布的.htaccess文件突然开始今天,在本地和远程服务器上工作。 我做了什么? 我不知道。 我尝试添加一个空的最后一行,作为另一个答案build议 – 然后它的工作。 但是现在我已经摆脱了空的最后一行,它仍然有效。 所以我不知道发生了什么事。 对不起,这里模糊的结果。 对我来说这是一个谜。
这甚至不像重新启动我的本地计算机是解决scheme,因为我没有重新启动远程服务器,我的.htaccess文件突然开始在那里工作了。 这是我重新testing之前上传的唯一一个文件,以查看它是否有效。