php - CSV 导出和下载导致内部服务器错误

标签 php mysql wordpress csv

我有一个 PHP 脚本,可以查询相当大的数据库并将结果存储到 CSV 中。尝试下载文件时,我不断收到 500 内部服务器错误。

我的预感是,由于需要将 2000 多行数据放入 CSV 中,因此它超时了。我的代码位于文本文件中。

我可以做什么来解决这个问题?这是需要在 php.ini 中完成的事情还是我需要 SSH 并修改 mysql 超时?我是否只是把这一切都搞错了,我应该将其存储到服务器上?

只需要一些关于如何完成此操作的指导。提前致谢。

http://andreawine.ladev.co/csv-export.txt

最佳答案

您可以在 PHP 错误日志中检查 500 错误的具体原因,但如果实际上是脚本超时,则有多种方法可以设置超时限制。

假设您没有使用安全模式,您可以使用set_time_limit(TIMEOUT)函数增加允许此(且仅此)脚本运行的时间量。 code>,其中 TIMEOUT 是最大秒数 - http://php.net/manual/en/function.set-time-limit.php

您可以通过在 php.ini 中将 max_execution_time TIMEOUT 设置为更高的值来增加服务器上所有脚本允许运行的时间,其中 TIMEOUT 是最大秒数 - http://www.php.net/manual/en/info.configuration.php#ini.max-execution-time

您可以通过使用 php_value max_execution_time TIMEOUT 设置 .htaccess 文件中的值来增加特定站点上或特定文件夹下的脚本的运行时间 code> 其中 TIMEOUT 是最大秒数。

关于php - CSV 导出和下载导致内部服务器错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13127711/

相关文章:

javascript - 重定向到另一个页面而不是显示通知

php - 如何在 Wordpress 模板上修复移动屏幕底部的按钮

php - wordpress 管理员中没有自定义字段表单

PHP 将 AM/PM 添加到时间字符串

php - 如何同时从两个网站注销 - PHP Session 处理

php - 警告: preg_match() [function.preg-match]: No ending delimiter '/' found

MySQL 外键错误 1215,即使两列类型相同且不为 NULL

mysql - 在 MySQL 中使用二进制数据

php - Laravel 查询返回问号而不是变量值

MySql - 如何获取上一行的值和下一行的值?