Ubuntu 10.04 上的 .htaccess 问题

Ubuntu 10.04 上的 .htaccess 问题

昨天我在 Ubuntu 10.04 上安装了 LAMP。起初一切似乎都很好,但是,当我启动我的 PHP 应用程序(我从使用 XAMPP 的 Windows 7 复制它)时,它不接受我的 .htaccess 文件。所以目前我的所有 URL 都坏了。

我为使.htaccess 工作做了什么。

1.当我在 ./sites-available/ 中创建单独的配置文件时,我将目录部分AllowOverride从更改NoneAll

<Directory /some_path/>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride All
    Order allow,deny
    allow from all
</Directory>

2.另外,我的.htaccess 文件中的第一行是RewriteEngine On

在 Windows 上,XAMPP 中的一切都运行良好。当我启动http://本地主机它给了我 500 内部服务器错误。当我改AllowOverride回时None,它会在我的根文件夹中打开 index.html,而不是 index.php。


UPD:error.log 说的是错误 500:

[Sat Jun 26 09:40:53 2010] [alert] [client 127.0.0.1] /some_path/.htaccess: Invalid command 'RewriteEngine', perhaps misspelled or defined by a module not included in the server configuration

有人能建议如何解决这个问题吗?

答案1

根据错误消息,mod_rewrite 尚未加载。使用 激活它a2enmod rewrite,然后使用 重新启动 Apache httpd service apache2 restart

答案2

你似乎没有mod_rewrite在 Apache 安装中安装或激活它。

Invalid command 'RewriteEngine'

非常清楚。当您设置AllowOverride为时none.htaccess文件将根本不被解析,因此不会出现任何错误消息。

您必须激活或安装该mod_rewrite模块。

相关内容