Home

De Franciscis Dimitri

Homepage & Laboratorio Creativo

Primary links

  • Homepage
  • Curriculum Vitae
  • Servizi
  • Fotografia
  • Libri e guide
  • Contattami
Home Blog dimitri's blog

Problemi con OpenX che richiede troppa RAM (128 MB)

Submitted by dimitri on Lun, 03/05/2010 - 19:10
  • Informatica
  • configurazione
  • hosting
  • OpenX
  • php

È da un po' di anni ormai che utilizzo OpenX, decisamente un bel programma in PHP per la gestione di campagne pubblicitare. Ha molte feature ma rimane molto facile da usare e configurare, inoltre come molte applicazioni PHP prevede un percorso di update semi-automatico che facilita di molto la vita all'mministratore del sistema.

Fino a oggi :)

I fatti

Fino a poco tempo fa la mia istanza di OpenX girava su un VPS (Virtual Private Server) quindi l'ambiente operativo era molto poco restrittivo, visto che ci giravano solo poche applicazioni e decisamente fidate: le mie! Mi sono però deciso a passare ad uno shared hosting per vari motivi:

  • primo e più importante: zero (o quasi) sbattimenti di tipo sistemistico, che se sono per un cliente ci stanno ma per se stessi sono solo una gran perdita di tempo;
  • costo minore (fra cui, ancora, i costi di amministrazione);
  • sicurezza: gli shared hosting sono prede ambite, ma sono decisamente meglio protetti di un VPS gestito da un sistemista solitario!

Insomma mi decido, scelgo un provider e trasporto tutto, con qualche intoppo ma dovuto solamente alla fretta e alla (relativa) poca importanza dell'applicazione.

Per un po' di tempo l'applicazione funziona egregiamente, poi un bel giorno, dopo diverso tempo che il provider ha avuto problemi di stabilità sulla macchina e ha cambiato qualche configurazione, mi ritrovo questa schermata al posto della pagina di login di OpenX:

 Openx 128 MB memory_limit

Traducendo, per i motori di ricerca (sono un gran paraculo, lo so):

Sorry, but OpenX cannot currently run on your machine

Detected problem:

The PHP "memory_limit" value is set to less than the required minimum of 128MB, but because the built in PHP function "ini_set" has been disabled, the memory limit cannot be automatically increased.

"Ma come", mi chiedo, "non si è mai lamentato fino ad adesso, ed ora scassa i maroni con 'sta ram? Ma poi, cacchio pretende pure 128 MB di ram tutta per sè! E che ci dovrà fare?" Bah

Contatto l'assistenza chiedendogli spiegazioni di questa modifica... e qui devo spezzare una lancia a favore dell'assistenza di Web4Web che il 1° maggio, durante un black-out multiplo e decisamente murphiano si è vista arrivare un ticket del genere, ma al posto che mandarmi affanculo mi ha spiegato che un memory_limit di 128 MB è da server dedicato! E te credo...

La soluzione

Certo, cìè anche una soluzione al problema, ma non pensate che mi sia piaciuta o che sia raccomandabile...

In sostanza bisogna [musica da film del terrore...] bisogna... modificare a mano il codice sorgente! Aaaaargh!!!! [urlo stile Psyco]

C'è infatti una bella funzioncina PHP dove c'è schiantato dentro un bel numerone e che viene utilizzata per sapere la quantità minima di RAM di cui ha bisogno l'applicazione, sotto la quale si rifiuta persino di farvi fare login! Pazzesco...

La funzione in questione si chiama:

OX_getMinimumRequiredMemory()

e si trova nel file:

memory.php

nella root dell'applicazione. In sostanza dovete modificarla in modo che restituisca 33554432 (32 MB) al posto di 134217728 (128 MB). Il calcolo (suggerito dai commenti nel codice) è:

MB x 1048576

Quindi la funzione deve diventare qualcosa di simile:

function OX_getMinimumRequiredMemory($limit = null)
{
    if ($limit == 'maintenance') {
        return 33554432; // 32MB in bytes (32 * 1048576)
    }
    return 33554432; // 32MB in bytes (32 * 1048576)
}

In conclusione

Questa soluzione non mi piace, per diversi motivi:

  • non risponde alla fatidica domanda "Cosa caz... caspita se ne fa OpenX di 128 MB?";
  • perché c'è un numero cablato nel codice e non una semplice configurazione?
  • come fa la gente a farlo girare negli shared hosting "normali" (ma anche quelli super non è che ti danno tutta quella RAM, eh...)
  • un domani che arriva un aggiornamento mi devo ricordare di ri-applicare questa modifica, sperando che continui a funzionare...

Però... beh almeno funziona :)

  • dimitri's blog
  • Aggiungi un commento
  • 238 letture

FeedFlare

Navigazione

  • Contenuti recenti
  • Cerca
  • Tags
  • Articoli più letti

De Franciscis Dimitri feeds

  • De Franciscis Dimitri - Homepage & Laboratorio Creativo

Secondary links

  • Note legali
  • Pubblicità su www.megadix.it

Copyright 2007 De Franciscis Dimitri - p.iva 05327790969

website monitoring service

Web4Web

RoopleTheme