• WordPress ma własne limity zużycia pamięci RAM

    dodany przez Przemysław Sikora

    Wczoraj klient napisał mi wiadomość, że jego strona na WordPressie strasznie mieli i generalnie nie działa. Sprawdzam, a serwer się obija. Wchodzę na stronę,  a ona …. działa i to szybko.

    Patrzę, sprawdzam. Okazało się, że IDS wyciął użytkownika, bo suhosin wykrył, że WordPress, chce zaalokować więcej pamięci RAM niż ma dozwolona dana strona. Poniżej komunikat, jaki znalazłem w logach
    ALERT - script tried to increase memory_limit to 1073741824 bytes which is above the allowed value (attacker '128.146.162.228', file '/www/super-stronka.org/html/wp-includes/functions.php', line 5599). Podobno w tym czasie użytkownik dodawał nowe treści. Wstawiłem jego IP na whitelistę, ale niestety ma zmienne. Poza tym to nie rozwiązuje problemu, a działa jak tabletka przeciwbólowa. Okazuje się, że WordPress ma własne limity, które mogą być inne niż nasze w php.ini. Aby je zmienić należy wyedytować plik „default-constants.php”

    vim /www/super-stronka.org/html/wp-includes/default-constants.php

    Znajdujemy akapit:
    if ( ! defined( 'WP_MAX_MEMORY_LIMIT' ) ) {
    if ( false === wp_is_ini_value_changeable( 'memory_limit' ) ) {
    define( 'WP_MAX_MEMORY_LIMIT', $current_limit );
    } elseif ( -1 === $current_limit_int || $current_limit_int > 268435456 /* = 256M */ ) {
    define( 'WP_MAX_MEMORY_LIMIT', $current_limit );
    } else {
    define( 'WP_MAX_MEMORY_LIMIT', '1024M' );
    }
    }

    W miejsce '1024M’ wpisujemy naszą wartość np. '1536M’. Zapisujemy i powinno być już dobrze, chyba że zapotrzebowanie jest jeszcze większe. W takim przypadku zweryfikowałbym CMS-a, w właściwie to wtyczki, czy któraś nie ma jakiś wycieków pamięci lub innych bugów.


    ERRATA
    Jak słusznie zauważył nasz redaktor Konrad, powyższą zmianę powinniśmy wykonać w pliku konfiguracyjnym wp-config.php.

    vim /www/super-stronka.org/html/wp-config.php

    dodajemy
    define('WP_MEMORY_LIMIT', '256M');
    Zastosowanie metody Konrada uchroni nas przed nadpisaniem, przy aktualizacji WordPress-a. W imieniu naszych czytelników … Dziękujemy!

Dodaj komentarz

Warto odwiedzić
Valid XHTML 1.0 Transitional centos.com.pl- mapa strony