doc:appunti:prog:note_di_programmazione_in_php
Differences
This shows you the differences between two versions of the page.
| Next revision | Previous revision | ||
| doc:appunti:prog:note_di_programmazione_in_php [2008/03/20 16:29] – external edit 127.0.0.1 | doc:appunti:prog:note_di_programmazione_in_php [2013/04/16 11:33] (current) – [Personalizzare php.ini in esecuzione CGI o FastCGI] niccolo | ||
|---|---|---|---|
| Line 38: | Line 38: | ||
| L' | L' | ||
| + | |||
| + | ===== Personalizzare php.ini in esecuzione CGI o FastCGI ===== | ||
| + | |||
| + | Se il PHP viene eseguito come [[wp> | ||
| + | |||
| + | Una soluzione è quella di creare un wrapper che faccia puntare ad una directory con il **'' | ||
| + | |||
| + | Ecco un esempio per impostare la **Default timezone** e la **date.timezone**. Si crea un file **'' | ||
| + | |||
| + | <code bash> | ||
| + | #!/bin/sh | ||
| + | PHPRC="/ | ||
| + | export PHPRC | ||
| + | PHP_DOCUMENT_ROOT="/ | ||
| + | export PHP_DOCUMENT_ROOT | ||
| + | export TZ=Europe/ | ||
| + | exec / | ||
| + | </ | ||
| + | |||
| + | e quindi nel VirtualHost di Apache si attiva il wrapper con qualcosa del genere: | ||
| + | |||
| + | < | ||
| + | </ | ||
| + | < | ||
| + | AddHandler fcgid-script .php .php3 .php4 .php5 | ||
| + | FCGIWrapper / | ||
| + | Options +ExecCGI | ||
| + | AllowOverride All | ||
| + | Order allow,deny | ||
| + | Allow from all | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | Nel php.ini personalizzato si può mettere ovviamente: | ||
| + | |||
| + | < | ||
| + | [Date] | ||
| + | date.timezone = Europe/Rome | ||
| + | </ | ||
| + | |||
| + | Dopo aver modificato il wrapper - se si usa FastCGI - bisogna riavviare Apache in modo da ricaricarlo in memoria. | ||
| + | |||
| + | ===== Gestione degli errori ===== | ||
| + | |||
| + | Con alcuni software (CMS tipo Joomla, ecc.) è facile incappare in errori del tipo: | ||
| + | |||
| + | < | ||
| + | Strict Standards: Non-static method xxx should not be called statically in xxx/ | ||
| + | </ | ||
| + | |||
| + | questo specialmente dopo l' | ||
| + | |||
| + | Intanto può essere utile avere un pezzo di codice che genera un errore **'' | ||
| + | |||
| + | <code php> | ||
| + | class A { function toto( ) {} } | ||
| + | class B extends A { function toto($a) {} } | ||
| + | </ | ||
| + | |||
| + | Quindi in php.ini si verifica che gli errori E_STRICT siano disabilitati: | ||
| + | |||
| + | < | ||
| + | error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT | ||
| + | </ | ||
| + | |||
| + | Attenzione che Joomla tiene in cache le pagine generate, dopo aver modificato la configurazione del PHP è necessario svuotare la cache per vedere il risultato. | ||
doc/appunti/prog/note_di_programmazione_in_php.1206026992.txt.gz · Last modified: (external edit)
