En php.ini, vaya a los límites de recursos, es decir:Resource Limits
donde se fijan los recursos mínimos requeridos, los cuales son: max_execution_time
que debe tener un valor mínimo de 250 pero que en el siguiente ejemplo está establecido en 300, el parámetromax_input_time
se puede dejar con el valor predeterminado que es 60, luego está la configuración max_input_vars
cual es el predeterminado 1000
, pero eso debe establecerse en un valor mínimo de 1500
y que en el ejemplo se establece en un valor de 2000
, mientras que el valor memory_limit
debería ser mínimo 128M
y que en el siguiente ejemplo está configurado en 256M
.
;;;;;;;;;;;;;;;;;;;
; Resource Limits ;
;;;;;;;;;;;;;;;;;;;
; Maximum execution time of each script, in seconds
; http://php.net/max-execution-time
; Note: This directive is hardcoded to 0 for the CLI SAPI
max_execution_time = 300
; Maximum amount of time each script may spend parsing request data. It's a good
; idea to limit this time on productions servers in order to eliminate unexpectedly
; long running scripts.
; Note: This directive is hardcoded to -1 for the CLI SAPI
; Default Value: -1 (Unlimited)
; Development Value: 60 (60 seconds)
; Production Value: 60 (60 seconds)
; http://php.net/max-input-time
max_input_time = 60
; Maximum input variable nesting level
; http://php.net/max-input-nesting-level
;max_input_nesting_level = 64
; How many GET/POST/COOKIE input variables may be accepted
max_input_vars = 2000
; Maximum amount of memory a script may consume
; http://php.net/memory-limit
memory_limit = 256M
Nell’esempio sottostante vengono mostrate le impostazioni della sezione Data Handling
c’è la voce post_max_size
che non deve avere un valore troppo basso ed il valore di 32M
può essere considerato un valore congruo accettabile e comunque andrebbe sempre valutato e nella peggiore delle ipotesi si può impostare il valore 0
che non pone limiti e che prende qualsiasi si valore in automatico.
Il carattere di default in questo esempio è impostato correttamente come di seguito: default_charset = "UTF-8"
, ma va sempre controllato se il valore è corretto, come per l’esempio sottostante, questo è il set di caratteri che deve trovarsi anche per le tabelle sul Data Base, alla fine di questo articolo vedremo come impostare my.cnf, affinché si crei il Data Base con il giusto set di caratteri cioè: "UTF-8"
.
;;;;;;;;;;;;;;;;;
; Data Handling ;
;;;;;;;;;;;;;;;;;
; Maximum size of POST data that PHP will accept.
; Its value may be 0 to disable the limit. It is ignored if POST data reading
; is disabled through enable_post_data_reading.
; http://php.net/post-max-size
post_max_size = 32M
; PHP's default character set is set to UTF-8.
; http://php.net/default-charset
default_charset = "UTF-8"
La sezione File Uploads
di solito ha valori molto bassi non è necessario mettere valori molto alti ma quelli che si vedono nell’esempio sottostante il valore upload_max_filesize = 32M
ed il valore max_file_uploads = 20
dovrebbero essere sufficienti per un corretto funzionamento di Typo3 10.
;;;;;;;;;;;;;;;;
; File Uploads ;
;;;;;;;;;;;;;;;;
; Whether to allow HTTP file uploads.
; http://php.net/file-uploads
file_uploads = On
; Temporary directory for HTTP uploaded files (will use system default if not
; specified).
; http://php.net/upload-tmp-dir
;upload_tmp_dir =
; Maximum allowed size for uploaded files.
; http://php.net/upload-max-filesize
upload_max_filesize = 32M
; Maximum number of files that can be uploaded via a single request
max_file_uploads = 20
Per quel che riguarda la sezione[opcache]
deve essere abilitata e per questo che riguarda i valori bisogna dire che opcache.memory_consumption
deve avere un valore minimo di0 128
ma nell’esempio sottostante il valore è impostato a 256
mentre per quel che riguarda opcache.interned_strings_buffer
il valore di default è 64
questo valore non ha bisogno di essere cambiato, infine parlando del la voce opcache.max_accelerated_files
il valore di default è: 50000
ma il valore minimo richiesto da Typo3 10 è: 100000
mentre nell’esempio sottostante il valore impostato è: 150000
come potete vedere nell’esempio sottostante.
[opcache]
; Determines if Zend OPCache is enabled
opcache.enable=1
; The OPcache shared memory storage size.
opcache.memory_consumption=256
; The amount of memory for interned strings in Mbytes.
opcache.interned_strings_buffer=64
; The maximum number of keys (scripts) in the OPcache hash table.
; Only numbers between 200 and 1000000 are allowed.
opcache.max_accelerated_files=150000
Infine vediamo come configurare il file che gestisce la creazione del Data Base e questo non influirà solo sul Data Base creato per Typo3 10, ma influisce su tutti i Data Base che vengono creati, il file da modificare è: /etc/my.cnf
che può essere modificato con l’editor nano con il comando nano /etc/my.cnf
o con altro editor di vostra scelta per esempio vi con il comando vi /etc/my.cnf
io preferisco nano, se le impostazioni dovessero essere character-set-server = utf8mb4
ed collation-server = utf8mb4_unicode_ci
vanno modificate come nel esempio sottostante con il valore character-set-server = utf8
ed il valore collation-server = utf8_unicode_ci,
diversamente Typo3 10 dara errori continui all’interno del Backend,
#
# include all files from the config directory
#
!includedir /etc/my.cnf.d
[client]
default-character-set = utf8
[mysql]
default-character-set = utf8
[mysqld]
character-set-client-handshake = FALSE
character-set-server = utf8
collation-server = utf8_unicode_ci
Queste impostazioni sono necessari per il corretto funzionamento di Typo3 10, ovviamente su un hosting condiviso è impossibile avere tutte queste impostazioni correttamente configurate, per cui è consigliato l’utilizzo di un VPS o di un Server Dedicato, dove le impostazioni richieste possono essere configurate tutte correttamente.