WordPress'те эстутум чеги

tl; dr: Кол менен маани же демейки маанилерди коюу WP_MEMORY_LIMIT/WP_MAX_MEMORY_LIMIT эч кандай таасири жок болсо WP_MEMORY_LIMIT/WP_MAX_MEMORY_LIMIT PHP эс тутумунун чегинен аз же ага барабар (мындан ары memory_limit деп аталат). Алар өтө төмөн маанилерди коюу үчүн колдонулат memory_limit динамикалык түрдө сунушталган минимумга чейин.


  • Туруктуу WP_MEMORY_LIMIT каалоосу боюнча кире алат wp-config.php менен define('WP_MEMORY_LIMIT', 'XXXM'); коюлсун.
  • Туруктуу WP_MAX_MEMORY_LIMIT каалоосу боюнча кире алат wp-config.php менен define('WP_MAX_MEMORY_LIMIT', 'XXXM'); коюлсун.
  • Болуп саналат WP_MEMORY_LIMIT коюлган эмес, анын демейки маанисине карата колдонулат:
    • memory_limit, наркын берген memory_limit динамикалык түрдө өзгөртүү мүмкүн эмес,
    • 64 МБ, эгерде ал көп сайт болсо,
    • 40MB башка.
  • Болуп саналат WP_MAX_MEMORY_LIMIT коюлган эмес, анын демейки маанисине карата колдонулат:
    • memory_limit, наркын берген memory_limit динамикалык түрдө өзгөрүлбөйт же ал чексиз (-1) же 256 МБдан чоң же барабар болсо,
    • 256 MB башка.
  • Демейки маанилер өткөндө кайра- кайра көтөрүлүп келген.
  • WP_MEMORY_LIMIT функцияны колдонуу менен бардык жерде өзгөрдү ini_set() динамикалык memory_limit, эгерде WP_MEMORY_LIMIT азыркыдан чоңураак memory_limit же качан WP_MEMORY_LIMIT чексиз (-1).
  • WP_MAX_MEMORY_LIMIT бэкендинде өзгөртүлгөн (тагыраак айтканда: функция качан wp_raise_memory_limit() ар кандай контексттерде чакырылган [admin, image]) функциясын колдонуу ini_set() динамикалык memory_limit, эгерде WP_MAX_MEMORY_LIMIT азыркыдан чоңураак memory_limit же качан WP_MAX_MEMORY_LIMIT чексиз (-1).
  • Логикасы WP_MAX_MEMORY_LIMIT чуркайт кийин логикасы WP_MEMORY_LIMIT, Демек WP_MEMORY_LIMIT алдыңкы жана WP_MAX_MEMORY_LIMIT арткы бетинде күчүнө кирет.
  • Жогоруда айтылган логиканын көбү иштеп жатат wp_initial_constants() (/wp-includes/default-constants.php) сыяктуу wp_raise_memory_limit() (/wp-includes/functions.php) ордуна.
  • Наркы memory_limit = XXXM ичинде php.ini аныкталат memory_limit (веб кызматын кайра күйгүзгөндөн кийин).
  • Наркы php_value memory_limit XXXM ичинде .htaccess аныкталат memory_limit папкадагы же анын папкасындагы бардык PHP файлдары үчүн .htaccess жайгашкан.
  • Веб-сервер эстутум чегинин маанисин ini_set() менен өзгөртүүгө же белгиленген мааниден ашып кетүүсүнө жол бербейт ( php_admin_value караңыз).
  • memory_limit процесске колдонулат: көбөйүү memory_limit болот параллелдүү PHP сурамдарынын санын азайтат. Демек, маани кылдаттык менен тандалышы керек (256 МБ, өзгөчө учурларда 512 МБ).
  • WordPress аркасында Куралдар > Вебсайттын абалы астында, маанилери memory_limit (Бөлүм: Server), ошондой эле тартып WP_MEMORY_LIMIT жана WP_MAX_MEMORY_LIMIT (Бөлүм WordPress константалары) окууга болот.
Артка