Firefox 间歇性地尝试下载/打开 PHP 页面,而不是在服务器上执行

Firefox 间歇性地尝试下载/打开 PHP 页面,而不是在服务器上执行

我发现这很相似问题这里是 serverfault,但那里的答案没有涵盖我的情况(据我所知)。

在某些[显然]随机的基础上,Firefox(我尝试过的唯一浏览器)将尝试下载 PHP 页面而不是“加载”它。

通常,关闭下载/打开对话框并重新单击链接即可使其正常工作。有时,我需要重新启动 Apache。

这不仅让我很恼火,也让使用我服务器的其他人很恼火。你知道是什么原因造成的吗?

输出top

mysqld在此服务器上的运行速度从 1% 到 190% 不等,但我没有注意到它的峰值与 Apache 在是否提供 PHP 页面用于“打开”以及是否按应有的方式运行它方面存在关联。)

top - 15:37:38 up 44 days, 10:17,  1 user,  load average: 0.11, 0.37, 0.43
Tasks:  39 total,   2 running,  37 sleeping,   0 stopped,   0 zombie
Cpu0  : 94.6% us,  5.4% sy,  0.0% ni,  0.0% id,  0.0% wa,  0.0% hi,  0.0% si
Cpu1  : 94.9% us,  5.1% sy,  0.0% ni,  0.0% id,  0.0% wa,  0.0% hi,  0.0% si
Mem:   1474560k total,  1464856k used,     9704k free,        0k buffers
Swap:        0k total,        0k used,        0k free,        0k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                                                                                     
 3698 mysql     15   0  124m  28m 4348 S 187.0  1.9   5:26.25 mysqld                                                                                                                                      
11286 root      15   0  3552  880  656 S  1.6  0.1  83:31.36 dovecot                                                                                                                                      
    1 root      15   0  1652  608  520 S  0.0  0.0   3:19.89 init                                                                                                                                         
 3622 root      15   0 21220 8992 5524 S  0.0  0.6   0:00.17 httpd                                                                                                                                        
 3651 root      19   0  2124 1040  888 S  0.0  0.1   0:00.00 mysqld_safe                                                                                                                                  
 3709 apache    15   0 41464  27m 4104 S  0.0  1.9   0:03.21 httpd                                                                                                                                        
 3728 apache    16   0 44008  29m 4276 S  0.0  2.1   0:07.59 httpd                                                                                                                                        
 3853 apache    16   0 44568  30m 4244 S  0.0  2.1   0:08.38 httpd                                                                                                                                        
 3869 apache    15   0 35084  20m 3040 S  0.0  1.4   0:01.82 httpd                                                                                                                                        
 9580 root      23   0  1548  576  492 S  0.0  0.0   0:00.00 udevd                                                                                                                                        
 9811 apache    15   0 32736  17m 2808 S  0.0  1.2   0:00.22 httpd                                                                                                                                        
10042 root      15   0  1552  528  440 S  0.0  0.0   0:28.87 syslogd                                                                                                                                      
10047 root      22   0  1492  372  308 S  0.0  0.0   0:00.00 klogd                                                                                                                                        
10065 named     18   0 47508 2876 1920 S  0.0  0.2   0:37.05 named                                                                                                                                        
10123 root      15   0  4068 1144  840 S  0.0  0.1   0:08.00 sshd                                                                                                                                         
10137 root      18   0  2112  756  632 S  0.0  0.1   0:00.00 xinetd                                                                                                                                       
11350 root      15   0  2632 1052  532 S  0.0  0.1   0:20.59 crond                                                                                                                                        
11362 root      15   0  6404 2140 1072 S  0.0  0.1   3:11.85 dovecot-auth                                                                                                                                 
11383 xfs       18   0  3172 1476  768 S  0.0  0.1   0:01.21 xfs                                                                                                                                          
11401 root      16   0  1720  452  344 S  0.0  0.0   0:03.66 atd                                                                                                                                          
11411 root      18   0  4092  804  576 S  0.0  0.1   0:00.00 saslauthd                                                                                                                                    
11412 root      18   0  4092  468  240 S  0.0  0.0   0:00.00 saslauthd                                                                                                                                    
11435 root      18   0  7344 5388 1628 S  0.0  0.4   1:41.01 miniserv.pl                                                                                                                                  
11935 root      15   0  6944 2240 1804 S  0.0  0.2   0:00.01 sshd                                                                                                                                         
11938 datente   15   0  7092 1520 1068 R  0.0  0.1   0:00.00 sshd                                                                                                                                         
11939 datente   15   0  2176 1312 1052 S  0.0  0.1   0:00.00 bash                                                                                                                                         
12005 datente   15   0  1912  992  788 R  0.0  0.1   0:00.00 top                                                                                                                                          
12161 root      15   0 11164  480  336 S  0.0  0.0   0:00.00 vzctl                                                                                                                                        
12162 root      17   0  2184 1292 1068 S  0.0  0.1   0:00.01 bash                                                                                                                                         
13574 root      15   0  7380 2016  992 S  0.0  0.1   0:01.88 sendmail                                                                                                                                     
13583 smmsp     18   0  6528 1640  828 S  0.0  0.1   0:00.00 sendmail                                                                                                                                     
20230 datente   18   0  2748 1224  712 S  0.0  0.1   0:00.07 screen                                                                                                                                       
20231 datente   15   0  2316 1344 1060 S  0.0  0.1   0:00.00 bash                                                                                                                                         
20264 datente   26  10 1132m 2884  844 S  0.0  0.2  13:50.31 fah6                                                                                                                                         
23843 dovecot   15   0  3556 1532 1268 S  0.0  0.1   4:06.58 imap-login                                                                                                                                   
23845 dovecot   15   0  3552 1528 1268 S  0.0  0.1   4:07.76 imap-login                                                                                                                                   
23847 dovecot   15   0  3556 1536 1272 S  0.0  0.1   4:09.06 imap-login                                                                                                                                   
23899 dovecot   15   0  3556 1532 1268 S  0.0  0.1   4:07.39 imap-login                                                                                                                                   
23963 dovecot   15   0  3556 1532 1268 S  0.0  0.1   4:06.99 imap-login                                                                                                                                   

答案1

如果 PHP 在 Apache 中配置正确,并且客户端正常运行,则 PHP 脚本可能未指定内容输出的正确 MIME 类型。通常Content-type必须打印出来,浏览器才能了解如何处理数据。

Firefox 尝试下载的文件的内容是什么?

答案2

您可以尝试使用 Apache Jarkarta Jmeter 加载您的服务器(如果不是生产服务器或者您有测试副本) http://jakarta.apache.org/jmeter/index.html

如果您从未使用过它,则需要半小时左右才能弄清楚,但它的使用相当简单。您可以发出数百个请求并查看服务器返回的信息,甚至可以根据需要呈现页面。这可以让您确定相关性,无论是加载、随机还是不正确的 headers\mime 问题。

这是一个非常棒的工具,可以用于负载时间诊断。

答案3

您是否对页面进行了预压缩,然后允许 mod_deflate 重新压缩?您遇到的问题是 Firefox 尚未从服务器收到 Content-length: 字节,因此将其视为部分下载。使用 live-http-headers,您会看到它确实具有 text/html 作为内容类型,并且保存的文件确实具有正确的呈现内容,但少了几个字节。如果内容的字节数恰好正确,则分块编码也会导致问题。

当 Firefox 遇到短暂的下载时,就会发生此问题,无论是通过超时还是连接关闭问题(通过 sigkill 等)。

Warner 新手认为内容类型设置不正确,这说明他不擅长处理大流量网络流量。我注意到这种行为在 2.2.14/2.2.15 上更常见,因此我们将一些补丁移植到了 2.2.12

相关内容