背景:我有我的网站( http://www.gymandspajobs.com )代码托pipe在Linux服务器上。 我的网站允许成员注册。 填好的表格通过JavaScript文件夹“/ javascript”进行validation,如果发现信息正常,则通过javascript HTTP请求对象和保存在文件夹“/ somefolder”中的php文件“somefile.php”在数据库的根目录下插入。
问题:当一个新用户尝试使用Firefox进行注册时(我在WinXP SP2,Firefox – v3.5.2中testing过),我得到的HTTP响应(我在我的JavaScript文件中点击)是“您没有权限访问/这台服务器上的somefolder / somefile.php“。 。
令人惊讶的是,相同的function在IE7和Chrome中运行得非常好。
请帮忙。
感谢致敬,
Rupak Kharvandikar
我会尝试清除您的浏览器中的caching等。 PHP是服务器端代码,当从不同的前端客户端请求时,不应该有不同的行为。
你可能想尝试改变用户代理和伪装成IE当你连接到Fx(用户代理切换插件可以让你快速,轻松地做到这一点)。 这将告诉你,如果它是在服务器端防止Fx代码,或者如果它是别的。
你有没有检查你的Apache日志?
你在Firefox的错误日志中遇到与你的Javascript相关的错误,或者是任何types的安全types错误?
Firefox的日志通过工具 – >错误控制台访问
如果您的浏览器已经打开了一段时间,那么它可能已经充满了各种各样的消息,清除它,然后再次尝试在您的网站上的行动,看看是否有任何东西出现在日志中,当你通过这个过程。
JavaScript允许在您的Firefox安装? (工具 – >选项…->内容)
您是否也尝试清除Firefox安装的caching和Cookie? 你可以用Ctrl + Shift + Delete来清空它。
它可能是一个被包含的文件(CSS,JPG,甚至是一个PHP包含),这些文件被IE和其他浏览器忽略。 换句话说,当浏览器请求index.php时,浏览器也会自动请求包含在index.php(graphics,CSS,外部JavaScript文件等)中的所有文件。 如果其中一个文件返回HTTP 200(OK)响应以外的内容,其他浏览器可能会忽略它,但是Firefox可能会抛出您所看到的错误。 您需要检查所有包含文件的path和权限。
你的somefolder包含国家字符?
感谢大家的所有见解。 非常感谢。
与此同时,我发布了链接( http://www.nabble.com/You-don%27t-have-permission-to-access-typo3-alt_doc.php-on-this-server.-td11212357。 HTML )的networking托pipe家伙和我的问题似乎已经解决了,我收到了这个答复从networking托pipe家伙。
我们已经禁用您的域的mod_security来修复它。 我们已经在您的域的httpdocs目录下的.htaccess文件中input了以下内容。 我们还validation并成功地提交了雇主注册,没有任何问题。 ~~~~~ SecFilterEngineclosures~~~~~
什么是“SecFilterEngine”,什么时候SecFilterEngineclosures? 请指导。
感谢致敬,
– Rupak Kharvandikar –
我正要build议你在查看HTTP响应头后去激活mod_security,但似乎已经完成了。
Mod安全检查客户端和Apache之间的事务,它是基于规则的,规则定义在匹配的情况下应该做什么。 很明显,至less有一个规则与FF一起提交,结果是403,你应该问你的提供者一个与你的网站相匹配的规则的日志,这样你就可以在访问这个文件(通过.htaccess)时更正你的代码或者禁用mod_security。
虽然这个问题已经解决了,但是我认为制作“SecFilterEngine”可能不是解决这个问题的最好方法,因为它会影响安全性。 因此,我问主机的家伙,如果有一种方法来保持mod_security打开,但让我的function工作……这里是他们的答复…..
[问:有没有什么办法可以让我的代码保持mod_security的开启?
答。 有可能的。 但这并不容易。 您必须修改文件中的代码,使得URI不应该有模式“!(^ application / x-www-form-urlencoded $ | ^ multipart / form-data;)”,因为我们发现这个条目在Apache的错误日志 –
mod_security-action:403
模式匹配“!(^ application / x-www-form-urlencoded $ | ^ multipart / form-data;)”在HEADER(“Content-Type”)]
请指导我如何做到这一点我的registry格?