Home » Seo&Social Media » Ottimizzare le performance del proprio sito – php.ini

Ottimizzare le performance del proprio sito – php.ini

Spesso capita di avere problemi di velocità quando si ha il proprio sito in soluzioni Hosting Condiviso in quanto sullo stesso Server sono presenti centinaia o migliaia di domini. Può capitare, a volte, che il proprio sito subisca rallentamenti dovuti ad un innalzamento del carico generato da un altro sito presente nel medesimo Server.

Non vi sono consigli veri e propri da dare in merito ma, per mia esperienza personale, l’utilizzo di un “php.ini” con abilitate alcune funzioni quali, ad esempio, la “Compressione Gzip“, permette di diminuire il numero di volte in cui il proprio sito va in Timeout o in errore “500 – Internal Server Error“.

La Compressione Gzip consente di far si che il Server comprima alcuni oggetti delle pagine ottimizzando così le performance in quanto il “peso” generale della pagina risulta ridotto.

Per attivare tale opzione vi sono vari modi ma, sinceramente, io preferisco utilizzare l’override tramite “php.ini”. Tale file contiene tutte le configurazioni del Web Server che sono, praticamente, quelle che vengono visualizzate quando si esegue il comando “phpinfo()” del Php. Per vederlo in azione basta creare e, successivamente, caricare via browser una pagina .php contenete le seguenti righe:

<?php

phpinfo();

?>

Utilizzando un php.ini opportunamente modificato è possibile variare (quando consentito del Provider) alcuni parametri come, ad esempio, il “memory_limit“, il “max_execution_time“, l'”output_buffering“, etc.

A questo link potete leggere tutti i parametri impostabili in tale file e la loro descrizione.

Tornando al discorso “Compressione Gzip” eccovi di seguito il codice da inserire nel vostro “php.ini” per abilitarla.

Io utilizzo il metodo che si appoggia alle Librerie Zlib. Il file “php.ini” per utilizzarle è il seguente:

output_buffering = 4096
output_handler =
zlib.output_compression = On
zlib.output_compression_level = 3
safe_mode = Off
max_execution_time = 120
memory_limit = 24M
post_max_size = 8M
register_globals = On
upload_max_filesize = 18M
variables_order = GPCS
disable_functions = system,popen,dl,passthru,proc_open,shell_exec
enable_dl = Off
error_reporting = 6135
expose_php = Off
extension_dir = ./
include_path = “.:/php/lib/php/”
log_errors = On
register_argc_argv = Off
safe_mode_exec_dir =
sendmail_from = me@localhost.com
upload_tmp_dir = “/tmp/”
user_dir = “home”
y2k_compliance = Off

Per chi non avesse sbattimento eccovi il file già preparato da copiare nella root del proprio sito (o dove richiesto):

Php.ini – Compressione Gzip On – Librerie Zlib

In alternativa a tale metodo è possibile abilitare la compressione utilizzando le Gzip e, in tal caso, il codice da inserire è il seguente:

output_buffering = 4096
output_handler = ob_gzhandler
safe_mode = Off
max_execution_time = 120
memory_limit = 24M
post_max_size = 8M
register_globals = On
upload_max_filesize = 18M
variables_order = GPCS
disable_functions = system,popen,dl,passthru,proc_open,shell_exec
enable_dl = Off
error_reporting = 6135
expose_php = Off
extension_dir = ./
include_path = “.:/php/lib/php/”
log_errors = On
register_argc_argv = Off
safe_mode_exec_dir =
sendmail_from = me@localhost.com
upload_tmp_dir = “/tmp/”
user_dir = “home”
y2k_compliance = Off

e questo il file già preparato:

Php.ini – Compressione Gzip On – Librerie Gzip

NOTE – Il file “php.ini” ha la particolarità di resettare alle impostazioni di default di Apache le eventuali impostazioni  omesse. Se inserite solo una riga contenente l’impostazione da cambiare le restanti verrebbero resettate ai valori minimi. E’ quindi importante inserire sempre tutte le impostazioni di base necessarie per evitare il crearsi di tale situazione. Il file da me pubblicato vale per il mio Hosting e, quindi, è possibile che su altri Provider crei problemi oppure necessiti di maggiori impostazioni inserite.

Se riscontrate problemi contattatemi tramite i Commenti che provvederò a darvi una mano.

Ti è stato utile? Votalo!
[Voti: 1    Media Voto: 4/5]
  • stefano

    Ciao, grazie della dritta.

    Ho un dominio aruba windows e dovrei attivare le librerie msstring. Posso riuscirci o devo passare per forza ad un dominio linux?

    la mia mail Stele_@hotmail.it

    • ciao stefano,
      credo che le mbstring aruba e dia solo su linux.
      Se hai bisogno di maggiori info per migliorare le prestazioni puoi contattarmi in pvt a capn3m0@websec.it
      A disposizione
      Paolo

  • WebFranco

    Non so perchè non si leggono le stringhe. Comunque seguendo il link, si possono vedere.
    Non so nemmeno perchè leggo due volte il mio precedente intervento.
    Me ne scuso.

  • WebFranco

    Riprendo questa interessante dissertazione, collegndomi al problema esposto da Ser, inquanto anch’io ho un sito su Aruba con Hosting Windows e avrei bisogno di comprimere alcune pagine un po’ pesantucce.
    Al di là dei link che giustamente hai proposto a Ser per l’ottimizzazione delle immagini, gradirei, se possibile, sapere se almeno per i file js è comunque valido anche su Hosting Windows ciò che è trattato nell’articolo di HTML.it (http://javascript.html.it/articoli/leggi/2441/ottimizzare-le-prestazioni-in-applicazioni-ricche-di-javascript/2/).
    In pratica, inserendo all’inizio e alla fine queste due stringhe

    e

    ottengo lo stesso risultato?

    Grazie e buon anno a tutti.
    P.s.: ho provato a testare un file js su un tool specifico (websiteoptimization.com/services/analyze/), con buoni risultati.

    • sebbene con un mondo di ritardo ti rispondo.
      si i file js e le ottimizzazioni css si riescono ad eseguire anche su windows.
      per avere un’idea di quanto si riuscirebbe a migliorare consiglio di usare yslow (plugin per firefox) e nello stesso tool ci sono i riferimenti ad ulteriori tools che permettono l’ottimizzazione dei singoli file.
      quindi poi basterà sovrascrivere il file con la stessa versione ottimizzata.
      scusa il gioco di parole..spero sia chiaro
      a disposizione

  • ciao

    Grazie mille.
    Per Hosting Windows Aruba se mi dici meglio le problematiche che riscontri posso provare a darti qualche dritta.
    Per mia esperienza l’Hosting Windows non ha problemi e va abbastanza bene, poi ovviamente dipende sempre da quello che uno ci vuole fare.

    Se la tua necessità è di ottimizzare le immagini prova a utilizzare tool on line come

    http://tools.dynamicdrive.com/imageoptimizer/

    oppure a installare i plugin YSlow e Page Speed per firefox che consentono di avere un quadro della situazione “performance2 del proprio sito.

    http://developer.yahoo.com/yslow/

    http://code.google.com/intl/it-IT/speed/page-speed/

    ciao ciao

    buona giornata

  • ser

    Grazie per la tua gentile risposta.
    Peccato, allora tutto nasce da una mia poca conoscenza che mi ha portato a utilizzare aruba, e solo da poco ho compreso che ha un po’ di difetti….
    Ho qualche pagina del sito un poco più pesante, ma non riesco ad alleggerire le immagini più di quello che ho già fatto.
    Se mi dici che non esiste possibilità di comprimere su aruba windows, proverò a rivedere e cambiare le immagini.
    Grazie!
    con tanta stima per la tua bravura e competenza!

  • Ciao ser
    mi dispiace ma su Aruba non è possibile sfruttare queste modifiche al php.ini su Hosting Windows.
    La compressione Gzip la trovi solo su Hosting Linux, mi spiace.
    😉
    Se mi dai qualche info posso comunque provare a dare una mano.. 🙂
    Buona serata

  • ser

    buongiorno,
    premetto, scusandomi, che sono meno di una principiante…
    ho sito su aruba windows vorrei abilitare la compressione.
    Mi perdoni, ma dove copio il file? (pensavo di adottare la seconda versione che ha scritto).
    Il secondo post dice di aggiungere x aruba una riga, ma cosa vuol dire modificata a dovere? cosa dovrei aggiungere oltre a auto_prepend_file =
    grazie per ogni vostro possibilie aiuto

  • Nicola

    Se volessi abilitare la libreria dinamica di PHP (alla voce enable_dl), questo sistema di sovrascrittura potrebbe funzionare?

    • In merito a quanto mi hai scritto bisognerebbe conoscere su quale Provider di Hosting sei per poterti dare una risposta certa.
      In linea di massima usando un php.ini ad hoc si riescono ad abilitare/disabilitare un po tutte le funzioni previste dalla configurazione del Php.
      Ti faccio presente che solitamente la necessità di utilizzare enable_dl nasce quando si devono usare file criptati o con IonCube o con SourceGuardian.
      In entrambi i casi ti informo che, se sei su Aruba, se imposti la versione 5 del Php, hai entrambi i loader correttamente configurati e, quindi, non hai bisogno di fare alcuna variazione alla configurazione.

      Buon weekend

  • TRyla

    Grande, vai cosi’!

Altro... Compressione gzip, Gzip, Hosting, internal server error, output compression, output handler, performance, php, phpinfo, script, velocità
Chiudi