我在为我的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:这里不允许选项
答案 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 之后加载了其他配置文件并覆盖了某些指令。