【问题标题】:Apache serves blank pageApache 提供空白页
【发布时间】:2008-11-21 08:04:08
【问题描述】:

我创建了一个示例 PHP 脚本来上传更大尺寸的 Excel 表格。此外,Excel 表中给出的每条记录的处理过程也有点复杂。为了允许更大的尺寸,我在 Apache 配置文件中添加了必要的 PHP ini 值来覆盖实际的 PHP ini 值。

问题是,一旦我上传更大的文件,它需要更长的时间,比如 2 分钟左右,之后我看到的是空白页面而不是结果页面。当我跟踪 Apache 日志时,我没有看到与此问题相关的任何此类行。

只是想知道,当 Apache 可以提供空白页时,是否有任何情况/可能性?

但是当我跟踪我的应用程序级日志时,很明显脚本已经完美地完成了这项工作。我怀疑,可能发生的事情是,一旦工作完成,当 Apache 即将返回结果页面时,会发生一些事情,但我不确定。

【问题讨论】:

    标签: php apache


    【解决方案1】:

    我的猜测是这不是 Apache 的错,您的浏览器只是连接超时。您可以尝试一些these 技术,看看是否有帮助。

    【讨论】:

      【解决方案2】:

      是否有可能没有正确处理“其他”情况?您可能会假设文件已成功上传,但这并不一定意味着确实如此。您是只增加了“upload_max_filesize”还是增加了“post_max_size”(所有表单的总和:输入文本 + 文件)?

      尝试在脚本顶部添加以下内容,以查看 PHP 可能显示的任何错误或警告。

      error_reporting(E_ALL);
      

      【讨论】:

      • 我确信脚本已经成功上传了文件,甚至它完成了它应该做的任务。我还覆盖了 apache conf 文件中的 post max size 值。所有错误标志都已打开。
      【解决方案3】:

      如果处理请求/上传需要一些时间,您可能需要考虑创建一个队列,用户知道文件已成功上传,并且必须等待(也许可以检查页面上的状态);并且您有一个 cronjob/background 进程来转换文件并更新它们。这样根本不会浪费用户的时间。

      【讨论】:

        【解决方案4】:

        听起来像是内存问题,尝试增加 memory_limit 或优化内存使用率

        内存分配/段错误导致空白页和无日志信息。

        【讨论】:

        • 确保您的 php.ini 上有 display_errors=On 以查看致命错误。
        【解决方案5】:

        你可以做两件事来避免这个问题

        1. 如果可能,请用户在您的情况下将 excel 文件转换为 csv。因为 csv 比 excel 表要轻得多。
        2. 尝试在脚本中使用 header("newpage.php") 将用户重定向到新页面

        【讨论】:

        • 要求是允许用户同时上传csv和excel文件。
        猜你喜欢
        • 2017-09-19
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-05-23
        • 2013-07-26
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多