如何在Ubuntu上的Apache中启用mod_rewrite?


Answers:


20

试试这个:sudo a2enmod rewrite,然后重新启动apache。


4

黑曜石使用a2enmod的答案是正确的解决方案。Andol的方法可行,但升级时可能会中断。a2enmod所做的只是创建一个符号链接,因此以下两个是相同的,都是正确的解决方案:

  ln -s /etc/apache2/mods-available/rewrite.load /etc/apache2/mods-enabled/

要么

  a2enmod rewrite

但是,a2enmod会查找其他类型的文件,其中一些文件带有.conf文件,可能还有其他文件。没有必要不学习此命令,尽管了解后台发生的事情很重要。

复制文件会使以后的管理员对您非常不满意。:)


好吧,这只是用于本地测试,所以没什么大不了的。但是,a2enmod反正比较容易。
内森·奥斯曼

2

实际上,虽然这是一种错误的解决方案,应该将rewrite.load./mods-available/复制到./mods-enabled/。您还记得之后重新启动apache吗?

无论如何,。/ mods-enabled /通常应包含指向./mods-available/中相应文件的符号链接。。如黑曜石所提到的,这最容易由命令a2enmod和a2dismod处理。

除了启用模块之外,您还必须激活重写。在编写RewriteCond:s和RewriteRule:s之前,必须在该配置上下文中有一个“ RewriteEngine On ”。


那也行。只要记住在启用了mods的符号链接上设置正确的权限即可,否则您将大发雷霆。
内森·奥斯曼
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.