我想编译PHP7
没有内存和超时限制模块。
有可能,还是有人有经验?
如PHP文档中所述:
编译内存限制支持。 (自PHP 5.2.1以来不可用 - 始终启用)
没有模块可以编译吗?
答案 0 :(得分:0)
您可以通过替换
在编译时有效地禁用PHP中的内存限制static PHP_INI_MH(OnChangeMemoryLimit)
{
if (new_value) {
PG(memory_limit) = zend_atol(ZSTR_VAL(new_value), (int)ZSTR_LEN(new_value));
} else {
PG(memory_limit) = 1<<30; /* effectively, no limit */
}
return zend_set_memory_limit(PG(memory_limit));
}
与
static PHP_INI_MH(OnChangeMemoryLimit)
{
PG(memory_limit) = 1<<30; /* effectively, no limit */
return zend_set_memory_limit(PG(memory_limit));
}
>在/main/main.c 中
https://github.com/php/php-src/blob/9bcd2bcc21b7739a03acbe4e86dea1efef98c7fd/main/main.c#L157
请记住,在初始化期间调用此函数一次以设置“默认值”,这应该足够了:)
同样地,我认为有效禁用max_execution_time所需的只是static PHP_INI_MH(OnUpdateTimeout)
函数的一个小补丁,只需在函数开头用if (stage==PHP_INI_STAGE_STARTUP)
替换if(1)
{{3它应该永远有效地保持无限。实际上没有测试过它