修改apache2.config里的 AllowOverride All ,也已经把 .htaccess文件放入网站目录下 ,但无法访问网站(500错误,提示为服务器问题)

本文解决了一个常见的Apache服务器配置问题,当.htaccess文件放置在网站目录下并修改了AllowOverrideAll参数后,仍出现500错误的情况。通过检查配置文件和修正.htaccess文件中的重定向规则,成功解决了网站访问问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题:已经修改apache2.config(非Ubuntu为 httpd.config)里的 AllowOverride All ,也已经把 .htaccess文件放入网站目录下 ,但无法访问网站(500错误,提示为服务器问题)

解决:

① apache2.config 默认时是否能访问网站。

② 查看 apache.config 文件(默认在 /etc/apache2/ 下)配置如下。

<Directory />
	Options FollowSymLinks
	AllowOverride None
	Require all denied
</Directory>

<Directory /usr/share>
	AllowOverride None
	Require all granted
</Directory>

<Directory /var/www/>
	Options Indexes FollowSymLinks
	AllowOverride All
	Require all granted
<

检查 AllowOverride All 是否配置于有 .htaccess文件 的目录下,因为这里有好几个 <Directory ... > 

默认根目录设置为 None。

像我这样的话,.htaccess文件 只要在 /var/www/ 下就可以,包括了子目录,即 /var/www/html/.htaccess 也可以。

③ 检查 .htaccess 文件 是否配置错误

如下是我出错的文件:

<Files ~ "^.(htaccess|htpasswd)$">
deny from all
</Files>
Options -Indexes
ErrorDocument 404 /err/404.html
RewriteEngine on
RewriteCond %{HTTP_HOST} ^(www\.xxxxx\.cn)(:80)? [NC]
RewriteRule ^(.*) xxxxxx.cn/$1 [R=301,L]
order deny,allow

发现是Rewrite重定向时出错。

故你可以删去这三行,或是进行修改。

<Files ~ "^.(htaccess|htpasswd)$">
deny from all
</Files>
Options -Indexes
ErrorDocument 404 /err/404.html
order deny,allow

这样就可以了。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值