调试PHP网站停止响应firefox的原因

时间:2013-02-18 16:16:22

标签: php firefox

一个用PHP编写并位于其他地方的网站,大部分时间都可以在5种主要浏览器中正常运行。

有时在firefox中,网站无法加载,但是相反,contact-server-icon点会逆时针旋转,让人感觉永远。似乎没有出现错误消息。我删除所有cookie和缓存并重新启动Firefox并重试但仍然存在相同的行为。

同时它可以在同一台计算机上的其他浏览器中工作,也可以在另一台计算机上使用firefox。

使用ping似乎没有数据包丢失。

如何调试此问题?

网站为stock.mrfootage.com

编辑:

加载时,网站cookie会更新,网站标题会显示在标签栏中。

如果我同时禁用javascript并删除所有Cookie或与该网站相关的所有Cookie,然后重新加载,则可以正常运行。然后我可以重新启用javascript并再次使用该网站。

如果另一方面我只禁用javascript或删除cookie,firefox选项卡似乎仍然在加载时挂起。

它可能也与Mac OS X上的Firefox有关,因为它不起作用的三台计算机都是mac,而我没有遇到这个问题的两台计算机都在运行Windows。

Livehttpheaders加载项根本没有显示任何标题。

2 个答案:

答案 0 :(得分:1)

我打赌问题在于HTML验证 - 这意味着你的一些HTML代码无效(比如未封闭的标签,不正确的地方标签等)。

要解决这个问题,您可以使用http://validator.w3.org/之类的在线HTML验证程序来显示您的问题。当你修复它们时,网站应该没有问题加载。

但是,有可能验证器会显示数百个问题而你不想修复所有这些问题。在这种情况下,您可以通过删除HTML中的一半并查看它是否加载(而不会卡在加载动画中)来查找HTML中的问题点。继续删除部件并将其带回,直到找到造成这种情况的位置 - 然后找出它有什么问题。

对于所有持怀疑态度的人都说Firefox只在下载了所有HTML后才会验证,这是不正确的。已知Firefox HTML解析器中的错误会导致此行为从past question和此bug report中明显看出。

答案 1 :(得分:0)

你可能会有一些javascript进入无限循环并导致解释器冻结。

您是否需要第三方资产,例如网络字体,Javascripts,样式表?如果你是,很可能其中一个资源没有加载,因为它是同步处理的(除非你有一个异步加载器),在资源响应超时或HTTP状态代码等之前,页面才会显示。 / p>

尝试在Chrome或Safari中加载网页,并将检查器打开到“网络”标签。你会在那里看到任何连接错误。