Linux / Debian Apache2 mod_rewrite内部错误

时间:2015-11-11 18:22:30

标签: linux apache .htaccess mod-rewrite debian

我在为我的Joomla-Site设置mod_rewrite时遇到了一些问题。 我在Debian上使用Apache 2.2.22。 网站位于目录: / home / web / beta /

我做了什么:

1)命令:

sudo a2enmod rewrite 
sudo mkdir -p /var/run/apache2
sudo chown -R www-data /var/run/apache2 
sudo a2enmod actions 
sudo /etc/init.d/apache2 force-reload 

2)然后我设置了以下文件: / etc / apache2 / sites-enabled / 000-default

<Directory /home/web/>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride FileInfo

3)路径/home/web/beta/.htaccess中的htaccess文件设置:

RewriteEngine On

(我从这个网站上获取了.htaccess:http://www.joomla-security.de/downloads.html

好的,现在问题。 只要我将AllowOverride设置为FileInfo,我就会收到以下错误消息:

  

内部服务器错误

     

服务器遇到内部错误或配置错误   无法完成您的请求。

     

请联系服务器管理员,网站管理员@ localhost和   告诉他们错误发生的时间,以及你可能做的任何事情   已经完成可能导致错误。

     

有关此错误的详细信息可能在服务器错误中可用   登录。位于XXXXXXX.com端口80的Apache / 2.2.22(Debian)服务器

我做错了什么? 你能帮帮我吗?

编辑:错误日志:

  

[11月11日星期三19:21:56] [通知]抓住了SIGTERM,关闭了

     

[Wed Nov 11 19:21:57 2015] [通知] Apache / 2.2.22(Debian)PHP / 5.4.45-0 + deb7u2配置 - 恢复正常运行

     

[Wed Nov 11 19:21:57 2015] [alert] [client XX.XX.XX.198] /home/web/beta/.htaccess:这里不允许选项

     

[Wed Nov 11 19:21:58 2015] [alert] [client XX.XX.XX.198] /home/web/beta/.htaccess:这里不允许选项

     

[Wed Nov 11 19:21:59 2015] [alert] [client XX.XX.XX.144] /home/web/beta/.htaccess:这里不允许选项

1 个答案:

答案 0 :(得分:0)

从您发布的错误来看,您似乎正在尝试在.htaccess中使用Options指令。为此,您需要将Options添加到 000-default 中的AllowOverride指令(参见https://httpd.apache.org/docs/2.2/mod/core.html#options)。

所以改变:

AllowOverride FileInfo

AllowOverride FileInfo Options
000-default

修改
如果上述方法无效,请尝试将其更改为:

AllowOverride All

如果 不起作用,则可能意味着在 000-default 之后加载了其他配置文件并覆盖了某些指令。