PHP GoDaddy 最大执行时间不起作用

2024-06-07

默认 maximun_execution_time 为 120 秒。我已按照所有说明创建 php.ini 文件并将其放置在正确的位置 public_html 中。我运行 phpinfo() 发现 maximun_execution_time 已成功调整为 600 秒。

但问题是它仍然无法执行超过 120 秒的脚本。执行时间 2 分钟后,它将返回错误代码 500 内部服务器错误。

sleep.php 文件:

<?php
    $sleepTime = isset($_POST['sleepTime'])? intval($_POST['sleepTime']): 0;
    sleep($sleepTime);
    echo " woke up";    
?>

sleep.html 文件:

<script>
    var beginSleep=function() {
        var timeNow = new Date();
        $('input[type=button]').attr("disabled", true);
        $('#msg').html(timeNow.getHours()+":"+timeNow.getMinutes()+":"+timeNow.getSeconds()+" Sleeping...<br>");
        $.ajax({
            url: "sleep.php",
            data: $('#formSleep').serialize(),
            type:"POST",
            dataType:'text',
            success: function(msg) {
                timeNow = new Date();
                $('#msg').append(timeNow.getHours()+":"+timeNow.getMinutes()+":"+timeNow.getSeconds()+msg);
                $('input[type=button]').removeAttr("disabled");
            },
            error:function(xhr, ajaxOptions, thrownError) {
                alert(xhr.status);
                alert(thrownError);
            }
        });
    };
</script>

<form id="formSleep" method="post" action="sleep.php">
    <p>Sleep time(seconds):</p><input type="text" name="sleepTime" value="5" />
    <input type="button" value="submit" onclick="beginSleep()" />
</form>
<p id="msg"></p>

截图:

https://i.stack.imgur.com/JsxXC.jpg https://i.stack.imgur.com/JsxXC.jpg

https://i.stack.imgur.com/jiZJI.jpg https://i.stack.imgur.com/jiZJI.jpg

如果我将睡眠时间设置为121秒并提交,它不会返回“唤醒”消息,而是提示错误代码500。

最新更新

我与 GoDaddy 支持人员交谈过,他们说我的 php.ini 工作正常,因为他们可以看到 max_execution_time 值已更改为 600 秒。但他们无法回答我为什么会出现超时问题。他们坚持认为这是我的脚本问题,并说我的测试脚本对于测试执行时间无效。

我向他们展示了另一个测试脚本,我认为这是最简单的。该消息永远不会显示,因为它超过 120 秒,并且将返回错误代码 500 内部服务器错误。

<?php
    sleep(121); echo "sleep(121) completed";  
?>

他们向我展示了他们的测试脚本,并声称 max_execution_time 设置工作正常。

test.php:test.php将在30秒后重定向到我的主页。

header( "refresh:30; url=http://my-site.net" );
echo "please wait 30 seconds";

他们向我展示的另一个测试脚本是无限循环“for(;;) ;”。当超过 120 秒时,该测试脚本也会自动超时。除此之外,无限循环消耗了我 80% 的 CPU 资源。

register_shutdown_function(function() {
    echo "shutdown function called\n";
});

set_time_limit(600); // Set time limit to 1 second (optional)
for (;;) ;

他们得出的结论是,我的 max_execution_time 无法正常工作是因为我没有足够的 CPU 资源。

我不相信他们说的,因为 sleep() 不使用太多资源。我尝试并行运行测试脚本,但 CPU 使用率为 0%。除此之外,我不认为 header( "refresh:30", url=...) 函数可以算作长时间运行的脚本。 GoDaddy 支持服务没有我想象的那么好。


000webhost、bluehost 和 ProISP 也有同样的问题,任何运行超过 120 秒的 PHP 进程都将被终止,无论设置如何,以防止服务器过载,并且您必须向工程师(实际上知道问题所在)询问您的问题帐户/脚本以获得此安全功能的豁免(祝你好运。只有 ProISP 实际上给了我一个豁免,对于 1 个特定的 php 脚本..) - 或者你可以购买一个 VPS(例如 ramnode.com ),或使用没有此限制的网络主机(例如 syse.no ),或者使用可能是的网络主机 愿意给你豁免(如 proisp.no )

GoDaddy 支持人员智障。为什么?标题(“刷新:30; url=http://my-site.net http://my-site.net”); 这会让你的浏览器重定向并且与php执行时间无关,并且他们无法找到问题的真正原因,而真正的问题与你的cpu使用率无关。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PHP GoDaddy 最大执行时间不起作用 的相关文章

随机推荐

  • vb.net中如何读取串口数据?

    我创建了一个类 有一个名为 SendUSSD 的子类 当调用它时 它会向连接 gsm 手机的 COM 端口发送一个 ussd 代码 如 123 此 usd 应该返回移动余额 If IsOpen True Then checks if the
  • 为什么 z-index 对 div 不起作用?

    我试图让我的页脚显示在页脚背景的顶部 但 z index 似乎不起作用 有人看出它有什么问题吗 http jsfiddle net f2ySC http jsfiddle net f2ySC 你必须明确地定义position财产 foote
  • 调用 Thread.start() 时,happens-before 是否具有传递性?

    假设我们有一堂课 class Foo int x Foo x 5 和一些客户端代码 public static void main String args Foo foo new Foo new Thread gt while true n
  • 角度斜线被编码

    我和这个人有同样的问题 angularjs slash after hashbang gets encoded https stackoverflow com questions 17530924 angularjs slash after
  • 检测滚动条是否可见(例如在移动设备上)

    我见过很多关于检测 HTML 元素是否可滚动的问题 答案 例如动态检测滚动条 https stackoverflow com questions 33805052 detect scrollbar dynamically 我需要类似的东西
  • golang导入结构体指针

    好的 我有一个主包和一个 http 处理程序包 本质上我想做的是设置一个全局结构 这样我就可以随时调用该结构中的信息 我尝试的示例的基本概要如下 主包导入处理函数 主包调用handlerfunc Handlerfunc 将 http Res
  • 自定义扩展未显示在实验实例中

    我创建了一个 VSIX 扩展 它显示在 Visual Studio 2010 中并且按设计工作 但是 我正在尝试构建一些依赖于此扩展的 Visual Studio 自动化 尽管它存在于我正在构建自动化包的项目中 但当我运行包项目时 Visu
  • 如何将 PyTTSx 的输出保存到 wav 文件

    我正在尝试找到为什么我的代码无法正常工作的解决方案 我使用的解决方案来自在 Python 中将合成的文本转语音记录到文件中 https stackoverflow com questions 9900137 recording synthe
  • Chrome 中的混合混合模式问题

    我一直在尝试在包含 css 不透明度过渡实例的页面上使用混合混合模式 似乎正在发生的情况是 包含 mix blend mode 的 div 在过渡期间 或者更确切地说 在动画进行过程中 显示得与没有混合模式时一样 我只发现这是 Chrome
  • Azure 忽略 ARM 模板中的站点配置设置

    我正在尝试开发用于部署多个 Web 应用程序的 ARM 模板 但我在尝试使用 Microsoft Web sites config 中提供的设置来配置 Web 应用程序时遇到困难 无论我在那里输入什么 当我部署 web 应用程序时 这些设置
  • 使用 Spring Boot 的多个 Rabbitmq 队列

    来自 Spring Boot 教程 https spring io guides gs messaging rabbitmq https spring io guides gs messaging rabbitmq 他们给出了创建 1 个队
  • 我可以在 WinForms 中的 PictureBox 上创建透明背景吗?

    我想做一个背景PictureBox控制透明 在里面PictureBox 矩形 我放置了一个图标 圆形 我想让图标透明 以便图标下方的其他部分可见 我尝试过设置PictureBox BackColor属性设置为 透明 但不起作用 我还尝试在运
  • Symfony2 - 多种形式的主题

    有没有办法在同一页面上的两个 或多个 表单使用不同的主题 我有 2 个表单 我想对第一个表单使用主题 X 对第二个表单使用主题 Y 您需要在显示表单之前声明您的主题 你应该试试 form theme form ThemeX html twi
  • 使用示例代码继续在 ggplot2 中遇到错误“loop_apply”未从当前命名空间(plyr)解析”

    我今天一直遇到这个错误 我已经从 github 下载了 plyr 但它仍然不起作用 安装 plyr 后 我重新启动了 R studio 甚至我的电脑 看来问题可能是由于 R 解析对外部 DLL 的引用的方式发生了变化 正如线程中途提到的he
  • 球衣中的注释继承

    我正在创建一些具有相同形式的资源类 因此一个好主意是使用 DRY 并使用继承 所以我创建了一个 RootResource 类并在其中放置了一些方法 我想注释它们 然后在子类中实现它们 但它不起作用 这是示例代码 public abstrac
  • ruby 正则表达式扫描与 =~

    Ruby 1 9 3 文档似乎暗示 scan 等同于 除了 scan 返回多个匹配项 而 仅返回第一个匹配项 并且 scan 返回匹配数据 而 返回索引 但是 在下面的示例中 这两种方法似乎对相同的字符串和表达式返回不同的结果 这是为什么
  • jqPlot:如何实时更新图表

    我无法弄清楚自己或找到关于如何以类似于此 highcharts 中所示的方式在 jqPlot 中执行实时更新的正确示例example http jsfiddle net YAC2L 基于this https groups google co
  • Black 不尊重 pyproject.toml 中的扩展排除

    在 VSCode 中 使用 Python 3 9 和 black 22 6 0 我的项目结构如下 root src module0 py module1 py tests test folder0 test file0 py test fi
  • 使用带有高斯先验的主持人

    我试图在使用 emcee 之前使用高斯 但似乎无法完全弄清楚 基本上我想更换 def lnprior theta a b c theta if 1 0 lt a lt 2 0 and 1 0 lt b lt 2 0 and 1 0 lt c
  • PHP GoDaddy 最大执行时间不起作用

    默认 maximun execution time 为 120 秒 我已按照所有说明创建 php ini 文件并将其放置在正确的位置 public html 中 我运行 phpinfo 发现 maximun execution time 已