Beruflich Dokumente
Kultur Dokumente
iM a s t e r s Ho m e D el i c io u s Gr u p o s d e u s u á r io s F. A . Q . R eg r a s Bu s c a Membros
Logado como: Waldemiro ( Sair ) Painel de Controle Ver Novos Posts Meu Assistente 0 Novas Mensagens
manual do php:
Grupo: Administradores
Posts: 3.933
CODE
Registrado: 8 Oct 2004 O php.ini é o arquivo de configuração do php, e ele é lido quando o php é iniciado.
De: Ribeirão Pires - SP
Quando o php esta rodando como modulo o php.ini é lido apenas quando o servidor
Membro nº: 13.485
iniciado.
para as versões CGI e CLI, isso acontece cada vez que eles são chamados.
QUOTE
Nota: O servidor web Apache muda o diretório para a raiz ao ser iniciado, fazendo com que o PHP
tente ler o arquivo php.ini da raiz do sistema de arquivos se esta existir.
CODE
nem todas as diretivas do PHP são documentados no manual. Para uma lista completa
das diretivas disponíveis na sua versão do PHP,
por favor leia seu arquivo php.ini que é bem comentado.
; qualquer texto em uma linha após ponto-e-vírgula sem aspas é ignorado isso
significa um comentario
http://forum.imasters.com.br/index.php?showtopic=144987 29/5/2006
Entenda o php.ini - iMasters Fóruns Página 2 de 16
http://br2.php.net/manual/pt_BR/configuration.changes.php
bom agora vamos estudar algumas linha do php.ini só irei explicar as linhas que realmente interess
para um usuario comun e nao um servidor
#Linha 75
zend.ze1_compatibility_mode = Off
Permite modo de compatibilidade com o Zend Engine 1 (PHP 4). Afeta clonagem, conversão e
comparação de objetos.
#Linha 86
asp_tags = Off
nessa linha se vc deixar em on vc habilita as tags de asp para ser usado com o php exemplo:
<% %>
#Linha 218
Syntax Highlighting mode
essas configurações mudam o efeito de cores da funções highlight_string() e highlight_file()
#Linha 237
expose_php = On
QUOTE
Em geral, segurança por obscuridão é uma das mais fracas formas de segurança. Mas em alguns
casos, cada pequeno bit extra de segurança é desejável.
Algumas poucas técnicas simples podem ajudar a esconder o PHP, possivelmente atrasando um
invasor que está tentando descobrir fraquezas em seu sistema. Setando expose_php = off
arquivo php.ini, você reduz a quantidade de informação disponível para ele.
#Linha 292
error_reporting
http://forum.imasters.com.br/index.php?showtopic=144987 29/5/2006
Entenda o php.ini - iMasters Fóruns Página 3 de 16
#Linha 299
display_errors = On
se tiver off deixe display_errors = On para programar
CODE
Isto determina quando os erros devem ser mostrados como parte da saída ou se devem
ser escondidos do usuário.
Nota: Isto serve para suportar o seu desenvolvimento e nunca deve ser usado em
sistemas de produção (ex. sistemas conectados a internet).
#Linha 304
display_startup_errors = Off
CODE
Mesmo quando display_errors esta em on, erros que aconteçam durante a inicializa
do PHP não são mostrados. É fortemente recomendado manter display_startup_errors em
off, exceto para procurar erros.
#Linha 309
log_errors = Off
CODE
Indica se as mensagens de erro do script devem ficar no log de erros do servidor ou
em error_log. Esta opção depende do servidor.
Nota: Você é fortemente avisado para usar o log de erros ao invés de mostra-los em
web sites de produção.
#Linha 313
log_errors_max_len = 1024
CODE
Define o limite de tamanho da mensagem de erro para logar em bytes. Em error_log
adicionada informação sobre a fonte. O padrão é 1024 e 0 permite que não seja
estabelecido nenhum limite.
#Linha 317
ignore_repeated_errors = Off
CODE
Não loga mensagens repetidas. Erros repetidos devem acontecer no mesmo arquivo na
mesma linha enquanto ignore_repeated_source estiver em true.
http://forum.imasters.com.br/index.php?showtopic=144987 29/5/2006
Entenda o php.ini - iMasters Fóruns Página 4 de 16
#Linha 322
ignore_repeated_source = Off
CODE
Ignora a fonte da mensagem quando estiver ignorando mensagens repetidos. Quando est
definição ON não irá logar mensagens de erros repetidas de arquivos diferentes ou
linhas diferentes.
#Linha 327
report_memleaks = On
CODE
Se este parâmetro estiver em Off, quando acontecerem memory leaks não será mostrado
(na saída ou no log). Isto só tem efeito numa compilação de debug, e se
error_reporting incluir E_WARNING na lista de permitidos.
#Linha 330
track_errors = Off php5
QUOTE
PHP5 Se ativado, a última mensagem de erro sempre estará disponível na variável $php_errormsg
#Linha 334
html_errors = Off
CODE
Desativa as tags HTML nas mensagens de erro. O novo formato de mensagens de erro em
HTML produz mensagens que podem ser clicadas e que direcionam o usuário para uma
pagina descrevendo o erro ou a função que causou o erro. Estas referencias são
afetadas por docref_root e docref_ext.
#Linha 343
docref_root = "path_manualphp/"
#Linha 344
docref_ext = .html
CODE
O novo formato de mensagens de erro em HTML produz mensagens que podem ser clicadas
e que direcionam o usuário para uma pagina descrevendo o erro ou a função que causo
o erro. No caso de paginas de manual você pode baixar o manual na sua língua e
definir esta diretiva para a sua cópia local. Se a sua cópia local do manual podur
ser acessada por '/manual/' você pode simplesmente usar docref_root=/manual/.
Adicionalmente você deve definir docref_ext para ser igual a extensão da sua c
docref_ext=.html. É possível usar referencias externas. Por exemplo, você pode usar
docref_root=http://manual/en/ ou docref_root="http://landonize.it/?
how=url&theme=classic&filter=Landon &url=http%3A%2F%2Fwww.php.net%2F"
http://forum.imasters.com.br/index.php?showtopic=144987 29/5/2006
Entenda o php.ini - iMasters Fóruns Página 5 de 16
A maior parte do tempo você deve querer que o valor de docref_root termine com uma
barra '/'. Mas veja o segundo exemplo acima o qual não tem ou não necessita isso.
QUOTE
Nota: Isto é para suportar o seu desenvolvimento já que torna mais fácil encontrar a descri
uma função. Entretando não deve ser usado em sistemas de produção (ex. sistemas conectados n
internet).
docref_ext string
Veja docref_root.
#Linha 347
error_prepend_string = "<font color=ff0000>"
#Linha 350
error_append_string = "</font>"
formatação da string da mensagem de erro
para manter o padrao XHTML use:
<span style="color: #ff0000">
</span>
#Linha 353
error_log = filename
#Linha 356
error_log = syslog
CODE
O nome do arquivo onde os erros do script serão logados. Se o valor especial syslog
é usado, os erros são enviados para o log do sistema. No UNIX, isto indica syslog(3
e no Windows NT isto indica o log do evento. O log de sistema não é suportado no
Windows 95. Veja também: [url=http://php.net/syslog]syslog()[/url].
#Linha 389
register_globals = Off
Usando Register Globals
QUOTE
Talvez a mudança mais controversa no PHP é quando o valor padrão para a diretiva do PHP
register_globals passou de ON para OFF no PHP 4.2.0. Confiança nesta está diretiva foi bastante
pública e muitas pessoas nem mesmo sabiam que ela existia e assumiam que ela é apenas a form
como o PHP trabalha. Esta página irá explicar como alguém pode escrever um código inseguro com
esta diretiva, mas mantenha em mente que a diretiva por si só não é insegura, mas o seu uso
incorreto sim.
http://forum.imasters.com.br/index.php?showtopic=144987 29/5/2006
Entenda o php.ini - iMasters Fóruns Página 6 de 16
Quando register_globals esta em on injetará (veneno) em seus scripts, todos os tipos de vari
como variáveis request de formulários HTML. Isto junta-se com o fato deo PHP não exigir
inicialização de variáveis siginifica que escrever códigos inseguros é muito mais fácil. Não foi uma
decisão difícil, mas a comunidade PHP decidiu, por definição, desabilitar esta diretiva. Quando on, a
pessoas usavam variáveis ainda sem saber realmente, com certeza, de onde elas vinham e podiam
apenas supor. Variáveis internas que estão definidas no próprio script conseguem se misturar com
dados requisitados enviados pelos usuários e desabilitando register_globals muda isto. Vamos
demonstrar com um exemplo de mal uso de register_globals:
PHP
1. <?php
2. // definir $authorized = true apenas se o usuário está autenticado
3. if (authenticated_user()) {
4. $authorized = true;
5. }
6.
7. // Por isso nós primeiro não inicializamos $authorized como false, isto poderi
8. // ser definido através de register_globals, como por GET auth.php?
authorized=1
9. // então, qualquer um pode ser visto como autenticado!
10. if ($authorized) {
11. include "/highly/sensitive/data.php";
12. }
13. ?>
CODE
Quando register_globals = on, nossa lógica acima pode ser comprometida. Quando off,
$authorized não pode ser setada via request portanto isto é mais agradável, apesar
disso é realmente uma boa prática de programação inicializar as variáveis primeiro.
Por exemplo, em nosso exemplo acima nós poderíamos ter feito primeiro $authorized =
false. Fazendo isto primeiro significa que nosso código acima trabalharia com
register_globals on ou off enquanto usuários, por definição, estariam
desautorizados.
Um outro exemplo é aquele das sessões. Quando register_globals = on, nós poder
também usar $username em nosso exemplo abaixo, mas novamente você deve imaginar que
$username poderia, também, vir de outros meios, tal como GET (pela URL).
http://forum.imasters.com.br/index.php?showtopic=144987 29/5/2006
Entenda o php.ini - iMasters Fóruns Página 7 de 16
PHP
1. <?php
2. // Nós saberíamos de onde $username veio, mas fazer com $_SESSION é
3. // para dados de sessão
4. if (isset($_SESSION['username'])) {
5.
6. echo "Olá <b>{$_SESSION['username']}</b>";
7.
8. } else {
9.
10. echo "Olá <b>Guest</b><br />";
11. echo "Você gostaria de logar?";
12.
13. }
14. ?>
CODE
É até possível tomar medidas preventivas para quando a formação de variável est
tentativa. Se você já sabe de antemão de onde a variável está vindo, você pode ver
se os dados submetidos está vindo de um tipo de submissão impróprio. Enquanto n
está garantido que dados não foram formados, ele exige a um atacante que advinhe o
tipo correto de formação da variável. Se você toma cuidado de onde os dados
requisitados vêm, você pode usar $_REQUEST já que ele contém um misto de dados GET,
POST e COOKIE.
#Linha 452
;include_path = ".:/php/includes" UNIX
#Linha 455
;include_path = ".;c:\php\includes" WINDOWS
CODE
include_path=".:/php/includes"
http://forum.imasters.com.br/index.php?showtopic=144987 29/5/2006
Entenda o php.ini - iMasters Fóruns Página 8 de 16
include_path=".;c:\php\includes"
Uso de . no caminho de inclusão (include path) permite que includes usando caminho
relativo em relação ao diretório atual.
#Linha 469
extension_dir = "./"
#Linha 519
upload_tmp_dir =
descomente e coloque o path pra onde ira salvar os arquivos tmp de upload exemplo
c:/windows/temp
#Linha 577
lista de extensoes caso vc precise usar alguma delas só descomentar a linha
;extension=php_mbstring.dll
;extension=php_bz2.dll
;extension=php_curl.dll
;extension=php_dba.dll
;extension=php_dbase.dll
;extension=php_exif.dll
;extension=php_fdf.dll
;extension=php_filepro.dll
;extension=php_gd2.dll
;extension=php_gettext.dll
;extension=php_ifx.dll
;extension=php_imap.dll
;extension=php_interbase.dll
;extension=php_ldap.dll
;extension=php_mcrypt.dll
;extension=php_mhash.dll
;extension=php_mime_magic.dll
;extension=php_ming.dll
;extension=php_mssql.dll
;extension=php_msql.dll
;extension=php_mysql.dll
;extension=php_mysqli.dll
http://forum.imasters.com.br/index.php?showtopic=144987 29/5/2006
Entenda o php.ini - iMasters Fóruns Página 9 de 16
;extension=php_oci8.dll
;extension=php_openssl.dll
;extension=php_oracle.dll
;extension=php_pgsql.dll
;extension=php_shmop.dll
;extension=php_snmp.dll
;extension=php_sockets.dll
;extension=php_sybase_ct.dll
;extension=php_tidy.dll
;extension=php_xmlrpc.dll
;extension=php_xsl.dll
e se vc for usar a extensao exif extension=php_exif.dll recorte o extension=php_mbstring.dll e deix
ele antes
da extensao extension=php_exif.dll senao nao funcionara o exif exemplo:
#Linha 627
SMTP = localhost
coloque o seu smtp valido exemplo smtp.terra.com.br
#Linha 631
;sendmail_from = me@example.com
coloque o seu email
#Linha 888
;session.save_path = "/tmp"
coloque o path onde sera salvo as temp do session
exemplo c:/windows/temp
--------------------
Funções uteis:
Post #2
Adailton Sep 2 2005, 07:52 AM
http://forum.imasters.com.br/index.php?showtopic=144987 29/5/2006
Entenda o php.ini - iMasters Fóruns Página 10 de 16
Boa
--------------------
Grupo: Moderadores
amor de pai... faço por ele...para meu filho Pedro Henrique
Posts: 2.005
Registrado: 10 Dec 2003
Funções uteis:
De: Santos-SP
Membro nº: 6.713
Chamar função PHP via javascript
http://forum.imasters.com.br/index.php?showtopic=164116
Backup do Mysql
http://forum.imasters.com.br/index.php?s=&showtopic=125348&view=findpost&p=499575
Formulario de email com envio de varios anexos
http://forum.imasters.com.br/index.php?showtopic=162806
Sistema de login
http://forum.imasters.com.br/index.php?showtopic=147566
Busca no Fórum
http://forum.imasters.com.br/index.php?act=Search&f=
Post #3
luis-restart Sep 2 2005, 01:10 PM
luis fernando
Post #4
Castor Jr. Sep 3 2005, 12:40 AM
Não presciso nem falar quem foi que postou ... parabens pelo post eu não sabia do lance
da extension=php_mbstring.dll ser antes da extension=php_exif.dll, como sempre
aprendendo com vcs.
um abraço.
Grupo: Membros
Posts: 293
Registrado: 6 Dec 2004
De: Rio Claro - SP
--------------------
Castor Jr
Membro nº: 14.840
junior_castor@yahoo.com.br
<?= $msn = "Me pergunte" ?>
-------------------------------------
O sucesso está em fazer, não em conseguir.
Post #5
claudio_ts_ma Sep 29 2005, 08:50 AM
http://forum.imasters.com.br/index.php?showtopic=144987 29/5/2006
Entenda o php.ini - iMasters Fóruns Página 11 de 16
Mesmo que eu tenha tirado o comentario da linha do modulo do mysql, no php.ini ,ele
continua dizendo que o php nao identifica as funçoes de acesso ao banco, o que poderia
ser agora?
Grupo: Membros
Posts: 3
Registrado: 9 Sep 2005
Membro nº: 23.297
Post #6
Fabyo Sep 29 2005, 10:23 AM
--------------------
Funções uteis:
Post #7
zando Nov 28 2005, 02:55 PM
Colegas,
Post #8
Fabyo Nov 28 2005, 04:18 PM
nem tudo pra configuirar via script depende do que seja só editando o php.ini
diretamente
http://forum.imasters.com.br/index.php?showtopic=144987 29/5/2006
Entenda o php.ini - iMasters Fóruns Página 12 de 16
http://br2.php.net/manual/pt_BR/function.ini-set.php
Grupo: Administradores Este post foi editado por Fabyo: Nov 28 2005, 04:18 PM
Posts: 3.933
Registrado: 8 Oct 2004
De: Ribeirão Pires - SP
--------------------
Membro nº: 13.485
Funções uteis:
Post #9
zando Nov 28 2005, 04:24 PM
Obrigado
Grupo: Membros
Posts: 74
Registrado: 11 Oct 2004
Membro nº: 13.544
Post #10
Fabyo Nov 28 2005, 04:25 PM
--------------------
Funções uteis:
Grupo: Administradores
Posts: 3.933
Chamar função PHP via javascript
Registrado: 8 Oct 2004
http://forum.imasters.com.br/index.php?showtopic=164116
De: Ribeirão Pires - SP
Backup do Mysql
Membro nº: 13.485
http://forum.imasters.com.br/index.php?s=&showtopic=125348&view=findpost&p=499575
http://forum.imasters.com.br/index.php?showtopic=144987 29/5/2006
Entenda o php.ini - iMasters Fóruns Página 13 de 16
Post #11
Flávia Jobstraibizer Nov 29 2005, 12:06 PM
Esses dias vi um outro tuto de php.ini que não chega aos pés desse que o Fabyo fez....
Valeu Fabyo.
--------------------
<?php
Grupo: Membros
Posts: 251 $nome= "Flávia Jobstraibizer";
Registrado: 14 Oct 2005 $site= "http://www.flaviajobs.com.br";
De: São Paulo $aviso= "Meu MSN não é Help Desk!";
Membro nº: 24.548 $mensagem= "O bonzinho só se fode. Parei de ajudar sem ser ajudada. Diga não aos chupins!";
?>
=================
www.flaviajobs.com.br
=================
Post #12
Fabyo Nov 29 2005, 01:02 PM
obrigado = )
--------------------
Funções uteis:
Post #13
[ GuTo ] Mar 14 2006, 06:31 PM
o que é o mysqli ?
--------------------
http://forum.imasters.com.br/index.php?showtopic=144987 29/5/2006
Entenda o php.ini - iMasters Fóruns Página 14 de 16
Post #14
Fabyo Mar 15 2006, 02:02 PM
Opa
Guto o PHP para acompanhar as novas funções que foram implementadas depois da
versao 4.1 em diante do mysql ele criou a função mysqli para alem de atender o mysql
mais novos aproveitou e incrementou um monte de melhorias e usando metodos e
classes mais definidas e funcionais um exemplo foi a eliminação da função
"mysql_select_db", porque na verdade isso era uma gambiarra das feias nenhuma outra
linguaguem faz assim, para conectar num banco de dados sempre se usou a string
Grupo: Administradores
completa com nome, senha, servidor e nome do banco tudo junto, mas do jeito do php
Posts: 3.933
Registrado: 8 Oct 2004 que usava nao fazia sentido algum, mas fora isso a classe mysqli tem muitos recursos e
De: Ribeirão Pires - SP vantagens de uso e só lembrando só funciona com php5 e mysql acima do 4.1.x
Membro nº: 13.485
obs: e para manter compatibilidade ele manteve as outras funções antigas (mysql_) e
criou a nova mysqli_
http://www.php.net/mysqli
--------------------
Funções uteis:
Post #15
[ GuTo ] Mar 15 2006, 02:06 PM
Ahhh
Valeu Fabyo!
http://forum.imasters.com.br/index.php?showtopic=144987 29/5/2006
Entenda o php.ini - iMasters Fóruns Página 15 de 16
--------------------
Email: gutoasp @ gmail . com
Grupo: Membros MSN: gutoasp @ hotmail . com
Posts: 168 ICQ: 108662800
Registrado: 16 Dec 2004
De: Canoas - RS Antonio Augusto André Silveira - WebDeveloper
Membro nº: 15.082
Mais detalhes sobre meus conhecimentos e meu trabalho, vide link abaixo:
http://www.imasters.com.br/forum/index.php?showtopic=133526
Post #16
_rapper_x_ Apr 10 2006, 10:25 PM
Grupo: Membros
Posts: 1
Registrado: 10 Apr 2006
Membro nº: 31.118
Post #17
Feliperc May 2 2006, 03:44 PM
Utilizo servidor em casa para fazer testes das minhas páginas PHP.
Nesse "servidor" de teste é plataforma Windows, para isso então terei que utilizar um
servidor SMTP para Windows caso eu queira testar a função mail?
Grupo: Membros
Posts: 1 Obrigado.
Registrado: 2 May 2006
Membro nº: 32.000
Post #18
Fabyo May 4 2006, 06:47 AM
--------------------
Funções uteis:
http://forum.imasters.com.br/index.php?showtopic=144987 29/5/2006
Entenda o php.ini - iMasters Fóruns Página 16 de 16
Digite palavras-chave Buscar no tópico « Próximo mais velho Cursos Próximo mais novo »
1 membros: Waldemiro
|---- Cursos Ok
http://forum.imasters.com.br/index.php?showtopic=144987 29/5/2006