申请了一个Linux虚拟主机做DZ论坛,但当安装程序时,不管是DZ论坛
还是PW程序,会遇到一个问题:
安装时,在第一步点击”同意”后,出现一个406 Not Acceptable 错误页面:
Not Acceptable
An appropriate representation of the requested resource /bbs/install/index.php could not be found on this server.
Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument
tohandle the request.
——————————————————————————————————————–
看它提示可能是说服务器上没有“index.php”这个文件,但后台明明就能看到,其实很多站长朋友可能不知道,这个是最终原因是LINUX服务器里 Apache设置将 Mod security 开启了,就是因为这个MOD,当网址中包含有“%”等其它敏感字符的时候,就会被阻挡。当然这只是针对GBK版,如果安装的UTF版没问题的。因为GBK 版本,我们在安装提交地址栏里有汉字,而汉字输入地址栏需要转码显示,转码后包含字符%,所以导致了这些问题的出现!
要解决这些问题,有3个方法:
1、针对上面的第一个问题,如果你装的是GBK版本DZ论坛,你可以直接跳过同意这一步的。
点击“同意”以后,你的地址栏会得到一个地址,注意观察,例如:
http://域名/bbs/install/index.php?step=1&uchidden=&submit=%CE%D2%CD%AC%D2%E2
把step=1后面的删掉后将1改成2再敲回车就可以跳过继续安装了。但是这个方法治标不治本,程序安装完后,则有可能会遇到后续问题,导致一些功 能不能启用。比如你论坛会员ID为中文的,你点“编辑”会员资料或“搜索”该会员帖子,URL网址中就会转换ID的中文字符,这下仍然会出现406错误拦 截页面。
2、装UTF-8编码的版本,毕竟是用国外的空间,而且UTF-8是一个国际通用的编码格式,据说性能还好,但是缺点也是显而易见,如果是康盛的产 品,你会发现,不管是DZ、Uchome还是SS,要扩展不是很容易,很少有针对UTF-8的插件、模板、风格,更多的还是GBK的,这个就看个人喜好 了。
3、最直接有效办法,关闭 Mod security 设置。有的服务器可能允许用户通过使用.htaccess控制Mod security 选项权限,但是很多不支持。所以最好请空间商帮你关闭。给空间商发个ticket,请他们关闭Mod Security服务.下面是范文,呵呵 ^_^
Hello, I am sorry to bother you! I hope you can help me disable the Mod security for this domain: www.3018.com, my cpanel account name is XXX. Because my URL must contain the characters “%”, but the Mod security led to the error, thanks very much!
同时以下是通过增加.htaccess规则来关闭mod_security模块,2个规则是一样的功效,如果你增加后发现空间打开出现500错误,那么说明你的服务器不允许自定义关闭mod_security模块,只能联系空间商管理员了。
方案1:
<IfModule mod_security2.c>
SecRuleEngine Off
</IfModule>
方案2:
<IfModule mod_security.c>
SecFilterEngine Off
SecFilterScanPOST Off
</IfModule>
还是PW程序,会遇到一个问题:
安装时,在第一步点击”同意”后,出现一个406 Not Acceptable 错误页面:
Not Acceptable
An appropriate representation of the requested resource /bbs/install/index.php could not be found on this server.
Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument
tohandle the request.
——————————————————————————————————————–
看它提示可能是说服务器上没有“index.php”这个文件,但后台明明就能看到,其实很多站长朋友可能不知道,这个是最终原因是LINUX服务器里 Apache设置将 Mod security 开启了,就是因为这个MOD,当网址中包含有“%”等其它敏感字符的时候,就会被阻挡。当然这只是针对GBK版,如果安装的UTF版没问题的。因为GBK 版本,我们在安装提交地址栏里有汉字,而汉字输入地址栏需要转码显示,转码后包含字符%,所以导致了这些问题的出现!
要解决这些问题,有3个方法:
1、针对上面的第一个问题,如果你装的是GBK版本DZ论坛,你可以直接跳过同意这一步的。
点击“同意”以后,你的地址栏会得到一个地址,注意观察,例如:
http://域名/bbs/install/index.php?step=1&uchidden=&submit=%CE%D2%CD%AC%D2%E2
把step=1后面的删掉后将1改成2再敲回车就可以跳过继续安装了。但是这个方法治标不治本,程序安装完后,则有可能会遇到后续问题,导致一些功 能不能启用。比如你论坛会员ID为中文的,你点“编辑”会员资料或“搜索”该会员帖子,URL网址中就会转换ID的中文字符,这下仍然会出现406错误拦 截页面。
2、装UTF-8编码的版本,毕竟是用国外的空间,而且UTF-8是一个国际通用的编码格式,据说性能还好,但是缺点也是显而易见,如果是康盛的产 品,你会发现,不管是DZ、Uchome还是SS,要扩展不是很容易,很少有针对UTF-8的插件、模板、风格,更多的还是GBK的,这个就看个人喜好 了。
3、最直接有效办法,关闭 Mod security 设置。有的服务器可能允许用户通过使用.htaccess控制Mod security 选项权限,但是很多不支持。所以最好请空间商帮你关闭。给空间商发个ticket,请他们关闭Mod Security服务.下面是范文,呵呵 ^_^
Hello, I am sorry to bother you! I hope you can help me disable the Mod security for this domain: www.3018.com, my cpanel account name is XXX. Because my URL must contain the characters “%”, but the Mod security led to the error, thanks very much!
同时以下是通过增加.htaccess规则来关闭mod_security模块,2个规则是一样的功效,如果你增加后发现空间打开出现500错误,那么说明你的服务器不允许自定义关闭mod_security模块,只能联系空间商管理员了。
方案1:
<IfModule mod_security2.c>
SecRuleEngine Off
</IfModule>
方案2:
<IfModule mod_security.c>
SecFilterEngine Off
SecFilterScanPOST Off
</IfModule>