找回密码
 注册
搜索
免费空间 免费域名 免费AI 老牌主机商首月仅1美分!27美元/年!Spaceship优惠码 Namecheap优惠码阿里云2核2G3M新老续费同享99元/年!
查看: 342|回复: 3

[建站交流] 安装/使用Discuz出现”406 Not Acceptable”的解决办法

[复制链接]
发表于 2012-2-3 22:38:50 | 显示全部楼层 |阅读模式
此情况比较少见,目前遇到此问题最多的是使用Discuz 的GBK版本时会出现这样的情况。

产生的原因:Apache Web Server 加载了Mod Security 所造成
ModSecurity是一个入侵侦测与防护引擎,它主要是用于Web 应用程序,所以也被称为Web应用程序防火墙。 它可以作为Apache Web服务器的模块或是单独的应用程序来运作。ModSecurity的功能是增强Web application的安全性和保护Web application以避免遭受来自已知与未知的攻击。
为了网站安全,在所有的共享服务器上安装有Apache的一个MOD叫作Mod Security,就是因为这个MOD,当网址中包含有“%”号等其它敏感字符的时候,就会被 Mod Security 阻挡,导致 406 Not Acceptable 错误,新版的 Mod Security无法使用.htaccess控制。

我们知道,只要在网址上出现中文的话,都会出现“%”的字符。而MOD不容许有这个字符。所以就产生了这个问题。

1、在安装过程中出现的 406 错误
就是在出现第一个“同意协议”的那个页面,当选择“同意”是,下一个页面会出现 406错误。
这个时候你观察一下浏览器的网址,一般就像下面的:

http://bbs/install/index.php?step=1&uchidden=&submit=%CE%D2%CD%AC%D2%E2

这个时候,你只要把“&uchidden=&submit=%CE%D2%CD%AC%D2%E2”去掉,就是删除掉,你会发现就可以正常安装了。

2、在论坛的使用过程中,也可能会出现类似的情况。只要在网址中出现了中文字符编译成的带有%的情况,就会出现406错误。
这时可以与客服联系把相关网站添加到Mod Security的例外列表中,当然,添加到例外列表中后Mod Security就会无法保护相关网站。所以添加申请域名到例外列表需谨慎。

3、使用UTF-8版本的网站程序
众所周知,UTF-8编码是最通用的编码,几乎所有程序都可兼容UTF-8编码,所以,使用UTF-8编码可以完全避免出现“406 Not Acceptable”的同时还能保护网站安全。
发表于 2012-2-4 10:24:15 | 显示全部楼层
没安装过gbk版本的,是不是空间不兼容啊
发表于 2012-2-4 19:31:12 | 显示全部楼层
WordPress是UTF8,但是406照样。。。
发表于 2012-2-5 17:10:45 | 显示全部楼层
感谢分享,原来你是这么解决的。
不过,用国外的,我都不装GBK
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|小黑屋|免费吧论坛

GMT+8, 2024-11-27 14:53 , Processed in 0.018633 second(s), 3 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表