Modificando Configurações de PHP
O ServBay vem com um ambiente PHP integrado e oferece opções de configuração flexíveis. Este documento detalha como alterar as configurações do PHP no ServBay, incluindo a localização dos arquivos php.ini
e php-fpm.conf
e opções comuns de configuração. Dependendo da versão do PHP, esses arquivos estão localizados no diretório /Applications/ServBay/etc/php/<versão>
. Além disso, os arquivos de configuração de carregamento de módulos PHP (como xdebug.ini
) estão localizados no diretório /Applications/ServBay/etc/php/<versão>/conf.d
.
Aviso Importante
Por favor, não modifique manualmente os arquivos de configuração. Todos os arquivos de configuração são gerados automaticamente pelo ServBay, e alterações manuais correm o risco de serem sobrescritas. Favor efetuar mudanças através da interface de usuário (UI).
Visão Geral
No ServBay, os arquivos de configuração do PHP são armazenados em diretórios diferentes conforme a versão. Por exemplo, os arquivos de configuração do PHP 8.3 estão localizados no diretório /Applications/ServBay/etc/php/8.3
. A seguir estão as localizações detalhadas desses arquivos de configuração:
php.ini
:/Applications/ServBay/etc/php/8.3/php.ini
php-fpm.conf
:/Applications/ServBay/etc/php/8.3/php-fpm.conf
- Arquivos de configuração de carregamento de módulos PHP:
/Applications/ServBay/etc/php/8.3/conf.d/
Modificando Através da Interface do Usuário do ServBay
O ServBay oferece uma poderosa interface gráfica de gerenciamento, onde os usuários podem modificar diretamente diferentes parâmetros de configuração. Após clicar em salvar, as alterações serão aplicadas instantaneamente, eliminando a necessidade de o usuário editar os parâmetros manualmente.
No menu de navegação à esquerda, abra Linguagem
e selecione a versão do PHP que deseja modificar. No lado direito, você verá o menu de edição. Uma interface típica é mostrada na imagem abaixo.
A interface é dividida em 3 diferentes categorias de configuração, que correspondem às configurações do PHP-FPM, PHP, e módulos PHP. A seguir, cada uma será explicada individualmente.
PHP FPM
Dica
O php-fpm.conf
corresponde ao desempenho do PHP nos serviços da Web, e todas as configurações têm prioridade (sobrepõem-se) sobre as configurações no php.ini
.
No entanto, essas configurações não afetam a execução do código no cli.
Primeiro é a interface de configuração do PHP FPM. Seja Caddy ou NGINX, o PHP nos serviços da Web do ServBay é executado no modo FPM. Nesta interface, você pode configurar o número de processos FPM, limite de memória, nível de erros do log, se deve exibir mensagens de erro no navegador, entre outros.
Por exemplo, se quisermos alterar o Memory Limit
de 64M para 1G na web, basta selecionar 1G
no menu suspenso de Memory Limit
, e então salvar. Esta modificação não afetará as configurações do php.ini
; ao executar scripts PHP no modo cli, continuará sob o controle do php.ini
.
Suponha que o php.ini
configure o Memory Limit
para 512M
, enquanto o PHP FPM
configure para 128M
. Assim, o mesmo script, quando executado no cli, pode usar 512M de memória, enquanto na web, pode usar 128M.
php.ini
Dica
As configurações do php.ini
são globais, correspondendo ao desempenho tanto no cli quanto na Web. No entanto, as configurações no php.ini
podem ser sobrepostas pelo php-fpm.conf
na Web.
A parte de configuração do PHP está relacionada às opções no arquivo php.ini
, que é o arquivo de configuração central do PHP.
Aqui, você pode configurar a maioria das opções do php.ini
, como post_max_size
que afeta o tamanho dos formulários post e upload_max_filesize
que afeta o tamanho de upload de arquivos. Também pode desativar funções com disable_functions
e classes com disable_classes
, entre outros.
Tenha em mente que, sendo uma configuração global, se você quiser configurar open_basedir
, é recomendável colocar todos os projetos de sites de forma unificada em /Applications/ServBay/www
, assim a configuração de open_basedir
pode evitar múltiplos diretórios.
Para um detalhamento dos campos de configuração, consulte a documentação oficial do php.ini.
Módulos de Extensão
O ServBay vem com uma variedade de módulos de extensão PHP amplamente usados, como xDebug
, OPcache
, Image Magick
, Redis
, MongoDB
, Phalcon
, Swoole
, entre outros. Para uma lista detalhada de módulos, consulte a lista de módulos PHP.
Habilitar módulos de extensão PHP é muito simples, basta clicar na chave e salvar. Para módulos como o xDebug que têm opções de configuração adicionais, também é possível modificar os itens de configuração facilmente.
Modificando Através de Edição Manual de Arquivos de Configuração
WARNING
A edição manual dos arquivos de configuração é adequada apenas para alterações temporárias de alguns itens.
Não recomendamos modificar os arquivos de configuração PHP manualmente. Todas as mudanças serão sobrescritas pelo ServBay.
Configuração php.ini
O arquivo php.ini
é o arquivo de configuração principal do PHP, usado para definir várias opções de tempo de execução do PHP.
Opções Comuns de Configuração
Abaixo estão algumas opções comuns de configuração php.ini
e como alterá-las:
Modificar limite de memória:
memory_limit = 256M
1Modificar limite de tamanho de arquivos de upload:
upload_max_filesize = 50M post_max_size = 50M
1
2Modificar configurações de fuso horário:
date.timezone = "America/Sao_Paulo"
1Habilitar exibição de erros:
display_errors = On error_reporting = E_ALL
1
2Modificar tempo máximo de execução:
max_execution_time = 300
1
Configuração php-fpm.conf
O arquivo php-fpm.conf
é usado para configurar os parâmetros de execução do PHP-FPM (FastCGI Process Manager).
Opções Comuns de Configuração
Abaixo estão algumas opções comuns de configuração php-fpm.conf
e como alterá-las:
Modificar configurações do pool de processos:
[www] listen = /Applications/ServBay/tmp/php-cgi-8.3.sock listen.backlog = -1 listen.allowed_clients = 127.0.0.1 ;listen.owner = www ;listen.group = www listen.mode = 0666 ;user = www ;group = www pm = dynamic pm.max_children = 10 pm.start_servers = 2 pm.min_spare_servers = 1 pm.max_spare_servers = 6 pm.max_requests = 1024 pm.process_idle_timeout = 10s
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16Habilitar log de requisição lenta:
request_slowlog_timeout = 5s slowlog = /Applications/ServBay/logs/php/8.3/slow.log
1
2Modificar caminho do log de erros:
error_log = /Applications/ServBay/logs/php/8.3/errors.log
1
Configuração de Carregamento de Módulos PHP
Os arquivos de configuração de carregamento de módulos PHP estão localizados no diretório /Applications/ServBay/etc/php/8.3/conf.d/
. Por exemplo, o arquivo xdebug.ini
é usado para configurar a extensão Xdebug.
Exemplo de xdebug.ini
Abaixo está um exemplo de arquivo xdebug.ini
:
[Xdebug]
; Uncomment the following line to enable XDebug
zend_extension = xdebug.so
xdebug.mode=debug,develop
xdebug.start_with_request=yes
xdebug.client_host=localhost
xdebug.client_port=39083
xdebug.log=/Applications/ServBay/logs/xdebug/8.3/xdebug.log
2
3
4
5
6
7
8
Reiniciando o PHP
Após modificar os arquivos de configuração do PHP, é necessário reiniciar o serviço PHP para que as alterações entrem em vigor. Isso pode ser feito através da interface de gerenciamento do ServBay ou usando a ferramenta de linha de comando servbayctl
.
Reiniciando Através da Interface de Gerenciamento do ServBay
- Abra a interface de gerenciamento do ServBay.
- Navegue até
Serviços
. - Encontre o serviço PHP correspondente à versão desejada e clique no botão
Reiniciar
.
Reiniciando Através do servbayctl
Usar a ferramenta de linha de comando servbayctl
permite reiniciar o serviço PHP facilmente:
servbayctl restart php 8.3
Conclusão
No ServBay, os arquivos de configuração do PHP estão localizados no diretório /Applications/ServBay/etc/php/<versão>
, incluindo php.ini
e php-fpm.conf
. Os arquivos de configuração de carregamento de módulos PHP estão localizados no diretório /Applications/ServBay/etc/php/<versão>/conf.d/
. Após modificar esses arquivos de configuração, é possível reiniciar o serviço PHP através da interface de gerenciamento do ServBay ou usando a ferramenta de linha de comando servbayctl
para que as alterações tenham efeito.