PHP 7 - Configuração do Arquivo PHP.INI

O arquivo de configuração do PHP, php.ini, é a forma final e imediata de afetar a funcionalidade do PHP. O arquivo php.ini é lido sempre que o PHP é inicializado. Em outras palavras, o httpd é reiniciado para a versão do módulo ou a cada execução do script para a versão CGI. Se sua alteração não estiver aparecendo, lembre-se de parar e reiniciar o httpd. Se ainda não estiver aparecendo, use phpinfo () para verificar o caminho para o php.ini.

O arquivo de configuração é bem comentado e completo. As chaves diferenciam maiúsculas de minúsculas, os valores de palavra-chave não; espaços em branco e linhas que começam com ponto e vírgula são ignorados. Os booleanos podem ser representados por 1/0, Sim / Não, Ativado / Desativado ou Verdadeiro / Falso. Os valores padrão em php.ini-dist resultarão em uma instalação razoável do PHP que pode ser ajustada posteriormente.

Aqui estamos explicando as configurações importantes no php.ini que você pode precisar para o seu analisador PHP.

short_open_tag = Off

Tags curtas abertas têm a seguinte aparência: <? ?>. Esta opção deve ser definida paraOff se você deseja usar as funções XML.

safe_mode = Off

Se estiver definido como ON, você provavelmente compilou o PHP com a opção --enable-safe-mode. O modo de segurança é mais relevante para o uso de CGI. Consulte a explicação na seção "Opções de tempo de compilação CGI" fornecida anteriormente neste capítulo.

safe_mode_exec_dir = [DIR]

Esta opção é relevante apenas se o modo de segurança estiver ON; ele também pode ser definido com o sinalizador --with-exec-dir durante o processo de construção do Unix. O PHP em modo de segurança só executa binários externos fora deste diretório. O padrão é / usr / local / bin. Isso não tem nada a ver com servir uma página da Web PHP / HTML normal.

safe_mode_allowed_env_vars = [PHP_]

Esta opção define quais variáveis ​​de ambiente os usuários podem alterar no modo de segurança. O padrão são apenas as variáveis ​​prefixadas com "PHP_". Se esta diretiva estiver vazia, a maioria das variáveis ​​são alteráveis.

safe_mode_protected_env_vars = [LD_LIBRARY_PATH]

Esta opção define quais variáveis ​​de ambiente os usuários não podem alterar no modo seguro, mesmo se safe_mode_allowed_env_vars for definido permissivamente.

disable_functions = [função1, função2 ...]

Uma adição bem-vinda à configuração do PHP4 e perpetuada no PHP5 é a capacidade de desabilitar as funções selecionadas por razões de segurança. Anteriormente, isso exigia a edição manual do código C a partir do qual o PHP foi feito. As funções de sistema de arquivos, sistema e rede provavelmente devem ser as primeiras a serem eliminadas, porque permitir a capacidade de gravar arquivos e alterar o sistema por HTTP nunca é uma ideia tão segura.

max_execution_time = 30

A função set_time_limit () não funcionará em modo de segurança. Portanto, esta é a principal maneira de fazer um script atingir o tempo limite no modo de segurança. No Windows, você deve cancelar com base na memória máxima consumida, e não no tempo. Você também pode usar a configuração de tempo limite do Apache para tempo limite, mas isso se aplicará a arquivos não PHP no site também.

error_reporting = E_ALL & ~ E_NOTICE

O valor padrão é E_ALL & ~ E_NOTICE, todos os erros, exceto avisos. Os servidores de desenvolvimento devem ser definidos como pelo menos o padrão; apenas os servidores de produção devem considerar um valor menor.

error_prepend_string = [" "]

Com seu bookend, error_append_string, esta configuração permite que você crie mensagens de erro com uma cor diferente do outro texto.

warn_plus_overloading = Off

Esta configuração emite um aviso se o operador + for usado com strings, como em um valor de formulário.

variables_order = EGPCS

Esta definição de configuração substitui gpc_order. Ambos agora estão obsoletos junto com register_globals. Ele define a ordem das diferentes variáveis: Environment, GET, POST, COOKIE e SERVER (também conhecido como Built-in). Você pode alterar esta ordem. As variáveis ​​serão substituídas sucessivamente na ordem da esquerda para a direita, com a mais à direita ganhando a mão todas as vezes. Isso significa que, se você deixou a configuração padrão e passou a usar o mesmo nome para uma variável de ambiente, uma variável POST e uma variável COOKIE, a variável COOKIE possuiria esse nome no final do processo. Na vida real, isso não acontece muito.

register_globals = Off

Esta configuração permite que você decida se deseja registrar as variáveis ​​EGPCS como globais. Isso agora está obsoleto e, a partir do PHP4.2, este sinalizador está definido paraOff, por padrão. Em vez disso, use os arrays superglobais. Todas as principais listagens de código neste livro usam arrays superglobais.

gpc_order = GPC

Esta configuração foi descontinuada.

magic_quotes_gpc = On

Essa configuração escapa das aspas nos dados GET / POST / COOKIE de entrada. Se você usa muitos formulários que possivelmente se submetem a eles próprios ou a outros formulários e exibem valores de formulário, pode ser necessário definir esta diretiva como On ou preparar-se para usar addslashes () em dados do tipo string.

magic_quotes_runtime = Off

Esta configuração escapa citações no banco de dados de entrada e strings de texto. Lembre-se de que o SQL adiciona barras às aspas simples e apóstrofos ao armazenar strings e não os remove ao retorná-los. Se esta configuração estiver desativada, você precisará usar stripslashes () ao enviar qualquer tipo de dados de string de um banco de dados SQL. Se magic_quotes_sybase estiver definido como On, deve ser Off.

magic_quotes_sybase = Off

Essa configuração evita aspas simples no banco de dados de entrada e strings de texto com aspas simples no estilo Sybase em vez de barras invertidas. Se magic_quotes_runtime estiver definido como On, deve ser Off.

auto-prepend-file = [caminho / para / arquivo]

Se um caminho for especificado aqui, o PHP deve incluí-lo automaticamente () no início de cada arquivo PHP. Inclui restrições de caminho.

arquivo auto-anexado = [caminho / para / arquivo]

Se um caminho for especificado aqui, o PHP deve incluir automaticamente () no final de cada arquivo PHP, a menos que você escape usando a função exit (). Inclui restrições de caminho.

include_path = [DIR]

Se você definir este valor, só terá permissão para incluir ou exigir arquivos desses diretórios. O diretório de inclusão geralmente está na raiz do documento. Isso é obrigatório se você estiver executando em modo de segurança. Defina como .in, a fim de incluir os arquivos do mesmo diretório em que seu script está. Vários diretórios são separados por dois pontos:.: / Usr / local / apache / htdocs: / usr / local / lib.

doc_root = [DIR]

Se estiver usando o Apache, você já configurou uma raiz de documento para este servidor ou host virtual em httpd.conf. Defina este valor aqui se você estiver usando o modo de segurança ou se quiser habilitar o PHP apenas em uma parte do seu site (por exemplo, apenas em um subdiretório de sua raiz da Web).

file_uploads = [on / off]

Ative este sinalizador se for fazer upload de arquivos usando script PHP.

upload_tmp_dir = [DIR]

Não descomente esta linha a menos que você entenda as implicações dos uploads de HTTP!

session.save-handler = arquivos

Exceto em raras circunstâncias, você não desejará alterar essa configuração. Portanto, não toque nele.

ignore_user_abort = [On / Off]

Esta configuração controla o que acontece se um visitante do site clicar no botão Parar do navegador. O padrão é On, o que significa que o script continua a ser executado até a conclusão ou tempo limite. Se a configuração for alterada para Off, o script será abortado. Esta configuração funciona apenas no modo de módulo, não CGI.

mysql.default_host = hostname

O host do servidor padrão a ser usado ao conectar-se ao servidor de banco de dados, se nenhum outro host for especificado.

mysql.default_user = username

O nome de usuário padrão a ser usado ao se conectar ao servidor de banco de dados, se nenhum outro nome for especificado.

mysql.default_password = senha

A senha padrão a ser usada ao conectar-se ao servidor de banco de dados, se nenhuma outra senha for especificada.