Alteração de definições PHP com .htaccess
Saiba como alterar definições PHP como mensagens de erro, tamanho de upload, session timeout e memory limit com um ficheiro .htaccess no seu alojamento web.
- Ocultar mensagens de erro
- Aumentar o tempo de vida da sessão (timeout)
- Aumentar o tamanho máximo de upload
- Aumentar o tempo máximo de execução
- Aumentar o máximo de variáveis de entrada
- Desativar always populate raw post data
- Desativar o OPcache
- Expiração do OPcache
- Limite de memória
Pode ajustar uma vasta gama de definições padrão do PHP com um ficheiro .htaccess.
O ficheiro deve ser colocado na pasta onde pretende que as alterações se apliquem. As alterações aplicam-se a todos os ficheiros e subpastas. Note que o ficheiro deve chamar-se ".htaccess" e, se ainda não existir, terá de o criar você mesmo com, por exemplo, um programa de FTP.
Pode ver uma lista de todas as definições do PHP aqui: http://www.php.net/manual/en/ini.list.php
Algumas definições também podem ser definidas diretamente no código PHP, com a função ini_set(). Detalhes sobre as definições, etc., podem ser encontrados no manual do PHP: http://php.net/manual/en/ini.list.php
Pode testar se as alterações foram definidas corretamente, consultando phpinfo(). Note que é a coluna "Local-value" que é aplicável.
As definições que pretende alterar devem simplesmente constar numa linha do ficheiro .htaccess. Algumas definições populares são:
Ocultar mensagens de erro
php_flag display_errors off
Aumentar o tempo de vida da sessão (timeout)
php_value session.gc_maxlifetime 3600
Aumentar o tamanho máximo de upload
php_value upload_max_filesize 512M
php_value post_max_size 512M
Aumentar o tempo máximo de execução
php_value max_execution_time 600
Aumentar o máximo de variáveis de entrada
php_value max_input_vars 20000
Desativar always populate raw post data
php_value always_populate_raw_post_data -1
Desativar o OPcache
NÃO recomendamos que desative o OPcache, pois isso pode tornar o seu website lento.
php_flag opcache.enable off
Expiração do OPcache
php_value opcache.revalidate_freq 60
Limite de memória
O memory_limit está, por padrão, definido para 2048MB em todos os alojamentos web, mas, em última instância, nunca poderá utilizar mais memória do que a incluída no pacote de alojamento web que escolheu.
Pode definir o memory_limit você mesmo. Caso necessite de mais memória, deve verificar se a causa do problema de memória não é um erro no seu código, base de dados, etc., e não simplesmente porque o memory_limit está 'demasiado baixo' - uma vez que, muitas vezes, não é esse o caso.
O memory_limit pode ser ajustado livremente através do .htaccess ou diretamente no código PHP com ini_set().
Alguns CMS (por exemplo, WordPress) definem o seu próprio memory_limit e, nesse caso, o memory_limit tem de ser definido de uma forma especial. Consulte a documentação do CMS que utiliza.
Artigo da categoria de suporte: PHP