Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/263.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Chrome只是不';无法完成加载JS文件_Javascript_Php_Html_Apache_Google Chrome - Fatal编程技术网

Javascript Chrome只是不';无法完成加载JS文件

Javascript Chrome只是不';无法完成加载JS文件,javascript,php,html,apache,google-chrome,Javascript,Php,Html,Apache,Google Chrome,我正在编写一个应用程序,其中在部分包含了大约12个短JS文件(我知道,我应该在结束之前将它们合并并移动;在生产过程中会用到这些文件) 问题是,当我尝试在Chrome中加载应用程序时,有些文件会立即加载,而有些文件则根本无法完成加载!Chrome一直试图加载12个JS文件,在我点击“停止”之前从不呈现页面 当我点击stop时,HTML被呈现,JS文件失败,如下图所示: 请注意,不同的JS文件每次尝试都会失败!每次都卡住的不是同一个文件 检查失败文件的标题显示“警告:请求尚未完成”。文件有时会在“

我正在编写一个应用程序,其中在
部分包含了大约12个短JS文件(我知道,我应该在
结束之前将它们合并并移动;在生产过程中会用到这些文件)

问题是,当我尝试在Chrome中加载应用程序时,有些文件会立即加载,而有些文件则根本无法完成加载!Chrome一直试图加载12个JS文件,在我点击“停止”之前从不呈现页面

当我点击stop时,HTML被呈现,JS文件失败,如下图所示:

请注意,不同的JS文件每次尝试都会失败!每次都卡住的不是同一个文件

检查失败文件的标题显示“警告:请求尚未完成”。文件有时会在“接收”过程中被卡住好几分钟

现在是有趣的部分,点击stop后,如果我专注于omnibar并按enter键,所有JS文件都会立即加载,应用程序工作正常

在服务器端,我使用Apache、PHP和MySQL。我是否在Apache中配置错误


两天后的状态:没事,没事,娜达,这让我发疯。我尝试过从不同的机器上运行代码,尝试过更改apache缓存设置,并在javascript中更改了大量内容,但都没有效果。最糟糕的是,没有人能指出问题所在

一种可能是您启用了Keep Alive,但它无法正常工作。我以前见过这个。浏览器将建立到服务器的最大连接数(通常为6个)以下载前几个文件(CSS、JS等),然后这些连接直到超时才会释放。我的症状和你的不太一样-超时时间是20秒,之后所有东西都会分6批加载-但这仍然可能是原因


在Apache配置(大多数系统上为httpd.conf)中,查找
KeepAlive
行(如果缺少该行,则添加该行),并将其设置为
Off

,这不仅仅是一个答案,我将如何解决该问题

我会尝试的一件事是一次注释一个标记并重新加载,以查看阈值在哪里。另外,因为这可能是服务器配置问题,所以每次尝试后我都会重新启动它,这样可以说,在两次尝试之间没有保留任何状态

我会尝试从您最喜欢的语言的脚本中请求各种Javascript,以获取更多提示。理想情况下,我会尝试让脚本一个接一个(比如使用curl)在请求之间等待几毫秒。我想我在这里也达到了一个门槛。例如,每秒获取一个脚本是可行的,但是当请求太近时,服务器就会卡住

如果仍然没有线索,我会使用tcpdump来观察浏览器和服务器之间的流量。好吧,这可能有点太低了

但我可能会使用netstat来查看浏览器与服务器并行打开多少连接来获取资源,并查看是否达到并发限制


很抱歉,这是一个解决方案,但我希望你能有一些想法,我很想知道你到底有什么问题

有几个很好的答案,但是如果您想要一种简单易行的方法,您可以使用PHP一次发送所有脚本。如果问题确实是与服务器的连接太多,则可以添加如下html代码:

<script type="text/javascript" src="scripts/scripts.php />
如果其他方法都不起作用,而问题是连接过多,那么这应该是可行的。

尝试在中模拟问题
它应该说问题的一方-chrome或服务器检查内容长度标题。服务器可能传递了不正确的值-大于实际内容长度。

在浏览器中的请求之后,我们收到了完全相同的消息“警告:请求尚未完成”


请求本身大约有15MB的JSON,它被输入到Angular 1应用程序中。这个请求花了大约2秒钟。请求完成后,Angular digest循环阻塞浏览器超过12秒(通过请求期间的分析可见)。在此期间,Chrome在请求中显示了“警告:请求尚未完成”的消息,而请求实际上已经完成。

尝试关闭一些Chrome扩展。已知Adblock会干扰开发。所有扩展都被阻止。以前没有人遇到过这样的事情吗?为什么要投反对票?我还没有找到解决办法!你试过把文件放在别处吗?也许有某种mime类型的问题?(我没有否决投票)。3.5分钟加载缩小的jquery——这里确实出了问题。您是否只在Chrome中遇到过这些问题?Firefox中发生了什么?您是否尝试过注释掉或删除每个包含,重新加载并查看是否遇到相同的问题?能否详细说明“保持活力”无法正常工作?它将如何引起问题?我在IIS上也有同样的问题。嘿,你能详细说明一下“请求期间的分析”吗?我想我也有同样的问题,但我想确定这已经有一段时间了。我认为这就像:启动浏览器的探查器,然后加载页面,在请求完成并呈现应用程序后停止探查器。链接已失效
<?php
header(''); // control all your headers
include('jquery-1.9.1.min.js');
// rest of scripts
?>