Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

RodriAndreotti

[Resolvido] Apache + PHP + MySQL +WIndows 7

Recommended Posts

Galera, já estou ficando careca com essa @#$! de windows 7, o que acontece é o seguinte:

 

Instalo os servidores APACHE, PHP e MYSQL, o PHP e APAACHE funcionam perfeitamente.

O MYSQL também funciona perfeitamente através da linha de comando, porém quando tento acessar o mysql usando scripts PHP o servidor retorna erro 500, porém não há nada errado com scripts.

 

O mesmo erro acontece quando tento abrir o PHPMyAdmin, o JOOMLA, ou qualquer outro aplicativo PHP.

 

Isso já está me deixando de cabelo em pé, ou melhor... sem ele...hehe

 

As portas no firewall do windows 7 estão todas OK.

 

As versões dos servidores são as seguintes:

- Apache 2.2.14

- PHP 5.3.1

- MySQL 5.43.1 6 4bits (Já tentei também com a versão 32 bits)

 

- Windows 7 ultimate 64 bits

 

Desde já obrigado a todos e aguardo ansioso por possíveis soluções, visto que estou meio que parado com alguns trabalhos por conta deste problema, estou até pensando em instalar XP em uma máquina virtual pra mexer com isso.

 

Obrigado a todos

Compartilhar este post


Link para o post
Compartilhar em outros sites

qual a configuracao do ambiente anterior?

 

windows xp?

 

php 5.2?

 

definiu senha para o usuario root padrao do mysql?

 

o php estah devidamente configurado para exibir mensagens de aviso ou erros ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então galera, obrigado todos que responderam.

 

Bom, respondendo ao primero que perguntou, o anterior era windows XP com as mesmas versões dos servidores e PHP.

 

Senha de root no MYSQL configurada corretamente.

Com relação as mensagens de erro, eu configurei o PHP.ini para mostrar todos os erros, mas mesmo assim não mostra nada, é redireconado para a página do erro 500 como descrevi no primeiro POST.

 

 

COm relação aos pacotes, já tentei o EasyPHP, o Wamp e o WOS Portable (que roda direto do pendrive e em outros sistemas funciona perfeitamente).

 

o estranho é que tem um conhecido que roda o easyPHP também no windows 7 e funciona bem, porém o dele também é 32 bits, e o meu é 64 bits.

 

Aqui tá tudo legal, só a comunicação com o mysql que não funciona, já instalei o servidor 32 bits e o 64 bits, e nem assim...

 

Se alguém tiver mais alguma idéia...

Vou testar o XAMPP vamos ver se rola...

 

Desde já obrigado a todos, se eu conseguir algum resultado, posto aqui.

 

Abraços a todos

Compartilhar este post


Link para o post
Compartilhar em outros sites

Senha de root no MYSQL configurada corretamente.

Manteve a senha vazia ou definiu uma senha ?

 

Se definiu senha, está usando OLD_PASSWORD() ou a criptogafia padrão atual do MySQL ?

 

Outros aplicativos conectam-se ao MySQL ?

 

Qual o link exato de onde fez download do MySQL ?

no site do mysql.com existem diversas versões.

 

 

Com relação as mensagens de erro, eu configurei o PHP.ini para mostrar todos os erros, mas mesmo assim não mostra nada, é redireconado para a página do erro 500 como descrevi no primeiro POST.

Poste as configurações que setou para exibir as mensagens de erro.

Dependendo de como configurou e em quais levels setou, um determinado level de mensagens de erro ou mensagens de aviso são omitidos.

 

é redireconado para a página do erro 500 como descrevi no primeiro POST

qual a mensagem exata que aparece na tela ?

 

 

você está usando php5.3, certo ?

no php5.3 oferece novas opções no php.ini.

ative também o log de erros em arquivo txt.

procure a diretiva "error_log" e defina um caminho

exemplo

error_log = C:/php-5.3.1RC4-Win32-VC6-x86/log/php_errors.log

 

exemplo completo de setagem de wrnings e errors log do PHP5.3

 

;   E_ALL | E_STRICT  (Show all errors, warnings and notices including coding standards.)
; Default Value: E_ALL & ~E_NOTICE
; Development Value: E_ALL | E_STRICT
; Production Value: E_ALL & ~E_DEPRECATED
; http://php.net/error-reporting
error_reporting = E_ALL | E_STRICT
;http://php.net/log-errors
display_errors = On
display_startup_errors = On
log_errors = On
log_errors_max_len = 1024
ignore_repeated_errors = Off
ignore_repeated_source = Off
report_memleaks = On
track_errors = On
html_errors = Off
error_log = C:/php-5.3.1RC4-Win32-VC6-x86/log/php_errors.log

 

 

 

obs: Utilizo Windows7 Ultimate 64bits há pouco mais de 10 meses.

Atualmente uso versão final licensiada.

PHP, MySQL, etc.. funcionam sem problemas.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Senha de root no MYSQL configurada corretamente.

Manteve a senha vazia ou definiu uma senha ?

 

Se definiu senha, está usando OLD_PASSWORD() ou a criptogafia padrão atual do MySQL ?

 

Outros aplicativos conectam-se ao MySQL ?

Padrão atual do Mysql e a senha não está em branco..

 

 

Qual o link exato de onde fez download do MySQL ?

no site do mysql.com existem diversas versões.

O link do que eu baixei é este:

http://dev.mysql.com/get/Downloads/MySQL-5.1/mysql-essential-5.1.41-winx64.msi/from/http://mysql.cce.usp.br/

 

 

Com relação as mensagens de erro, eu configurei o PHP.ini para mostrar todos os erros, mas mesmo assim não mostra nada, é redireconado para a página do erro 500 como descrevi no primeiro POST.

Poste as configurações que setou para exibir as mensagens de erro.

Dependendo de como configurou e em quais levels setou, um determinado level de mensagens de erro ou mensagens de aviso são omitidos.

Deixei configurado para E_ALL.

 

é redireconado para a página do erro 500 como descrevi no primeiro POST

qual a mensagem exata que aparece na tela ?

a mensagem de erro é a padrão do windows para erro 500:

O site não pode exibir a página

HTTP 500

Causas prováveis:

O site está em manutenção.

O site tem um erro de programação.

 

Você pode tentar:

Atualizar a página.

 

Voltar para a página anterior.

 

 

 

 

 

você está usando php5.3, certo ?

no php5.3 oferece novas opções no php.ini.

ative também o log de erros em arquivo txt.

procure a diretiva "error_log" e defina um caminho

exemplo

error_log = C:/php-5.3.1RC4-Win32-VC6-x86/log/php_errors.log

 

exemplo completo de setagem de wrnings e errors log do PHP5.3

 

;   E_ALL | E_STRICT  (Show all errors, warnings and notices including coding standards.)
; Default Value: E_ALL & ~E_NOTICE
; Development Value: E_ALL | E_STRICT
; Production Value: E_ALL & ~E_DEPRECATED
; http://php.net/error-reporting
error_reporting = E_ALL | E_STRICT
;http://php.net/log-errors
display_errors = On
display_startup_errors = On
log_errors = On
log_errors_max_len = 1024
ignore_repeated_errors = Off
ignore_repeated_source = Off
report_memleaks = On
track_errors = On
html_errors = Off
error_log = C:/php-5.3.1RC4-Win32-VC6-x86/log/php_errors.log

 

 

 

obs: Utilizo Windows7 Ultimate 64bits há pouco mais de 10 meses.

Atualmente uso versão final licensiada.

PHP, MySQL, etc.. funcionam sem problemas.

 

Certo, tentei fazer esta mesma configuração no meu php.ini, porém não foi nem gerado o arquivo de log.

 

Desde já muito obrigado por ajudar cara...

 

abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

se puder responder outras perguntas podemos ajudá-lo de formamais objetiva..

 

 

Se definiu senha, está usando OLD_PASSWORD() ou a criptogafia padrão atual do MySQL ?

 

Outros aplicativos conectam-se ao MySQL ?

 

...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Opa, voltando, consegui fazer o PHP gerar o log, bom...

 

seguinte, o log referente ao erro que estou tendo é o seguinte:

[02-Dec-2009 00:07:36] PHP Notice:  Undefined index: p in Y:\wosportable\www\start\index.php on line 30

[02-Dec-2009 00:07:36] PHP Notice:  Undefined index: lang in Y:\wosportable\www\start\index.php on line 33

[02-Dec-2009 00:08:36] PHP Warning:  mysql_connect(): [2002] Uma tentativa de conexão falhou porque o componente conectado nã (trying to connect via tcp://localhost:3306) in Y:\wosportable\www\start\start.inc on line 28

[02-Dec-2009 00:08:36] PHP Warning:  mysql_connect(): Uma tentativa de conexão falhou porque o componente conectado não respondeu

corretamente após um período de tempo ou a conexão estabelecida falhou

porque o host conectado não respondeu.

 in Y:\wosportable\www\start\start.inc on line 28

[02-Dec-2009 00:08:36] PHP Fatal error:  Maximum execution time of 60 seconds exceeded in Y:\wosportable\www\start\start.inc on line 28

Obrigado novamente.

Compartilhar este post


Link para o post
Compartilhar em outros sites

se puder responder outras perguntas podemos ajudá-lo de formamais objetiva..

 

 

Se definiu senha, está usando OLD_PASSWORD() ou a criptogafia padrão atual do MySQL ?

 

Outros aplicativos conectam-se ao MySQL ?

Então, já havia respondido, mas tudo bem, é que ficou meio grande minha resposta anterior...

então sim defini uma senha...poréma a defini pelo instance config, então creio que seja a criptografia padrão atual.

 

o erro que o php me retorna no log é este que postei na resposta acima.

 

E novamente, obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Outros aplicativos conectam-se ao MySQL ????

 

Então, não testei com nenhum outro aplicativo além do PHP e a Linha de comando do próprio MySQL, vou instalar o Delphi pra ver se se comunica.

 

EDITANDO:

Testei aqui amigo, o delphi conecta, não retorna erro algum, o problema é só no conector PHP mesmo...

 

Alguma idéia do que possa ser?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Se definiu senha, está usando OLD_PASSWORD() ou a criptogafia padrão atual do MySQL ?

 

.. tem outras várias perguntas que nao espondeu.. assim é dificil ajudar em algo..

 

experiemente usar busca ou mecanismos de buscas

 

http://forum.imasters.com.br/public/style_emoticons/default/seta.gif

www.google.com

 

 

 

caso tenha queira suporte particular, consulte

 

http://mercado.imasters.com.br

Compartilhar este post


Link para o post
Compartilhar em outros sites

Nossa cara, todas as perguntas que você me fez eu já respondi, inclusive essa que vocÊ acaba de me perguntar já respondi duas vezes, é só ler acima nos outros posts.

 

Com relação aos mecanismos de busca já me exauri de tanto buscar por lá e não consegui encontrar, por isso solicitei ajuda no forum.

 

Mas vamo lá, as perguntas que você fez, vou postar a resposta pra elas aqui novamente:

 

Se definiu senha, está usando OLD_PASSWORD() ou a criptogafia padrão atual do MySQL ?

Então, já havia respondido, mas tudo bem, é que ficou meio grande minha resposta anterior...

então sim defini uma senha...poréma a defini pelo instance config, então creio que seja a criptografia padrão atual.

 

Outros aplicativos conectam-se ao MySQL ????

Sim tralizei o teste através do Delphi 2009 e este consegue se conectar ao mysql

 

Qual o link exato de onde fez download do MySQL ?

http://dev.mysql.com/get/Downloads/MySQL-5.1/mysql-essential-5.1.41-winx64.msi/from/http://mysql.cce.usp.br/

 

Poste as configurações que setou para exibir as mensagens de erro.

Basicamente aquelas que você deu a sugestão, eu já havia configurado daquela forma antes, e depios fui mudando, mas depois voltei a este esquema novamente.

 

error_reporting = E_ALL | E_STRICT
;http://php.net/log-errors
display_errors = On
display_startup_errors = On
log_errors = On
log_errors_max_len = 1024
ignore_repeated_errors = Off
ignore_repeated_source = Off
report_memleaks = On
track_errors = On
html_errors = Off
error_log = C:/php-5.3.1RC4-Win32-VC6-x86/log/php_errors.log

o log que é gerado pelo php quando tentp acessar a página é o seguinte:

[02-Dec-2009 00:07:36] PHP Notice:  Undefined index: p in Y:\wosportable\www\start\index.php on line 30
[02-Dec-2009 00:07:36] PHP Notice:  Undefined index: lang in Y:\wosportable\www\start\index.php on line 33
[02-Dec-2009 00:08:36] PHP Warning:  mysql_connect(): [2002] Uma tentativa de conexão falhou porque o componente conectado nã (trying to connect via tcp://localhost:3306) in Y:\wosportable\www\start\start.inc on line 28
[02-Dec-2009 00:08:36] PHP Warning:  mysql_connect(): Uma tentativa de conexão falhou porque o componente conectado não respondeucorretamente após um período de tempo ou a conexão estabelecida falhouporque o host conectado não respondeu. in Y:\wosportable\www\start\start.inc on line 28
[02-Dec-2009 00:08:36] PHP Fatal error:  Maximum execution time of 60 seconds exceeded in Y:\wosportable\www\start\start.inc on line 28

qual a mensagem exata que aparece na tela ?

O site não pode exibir a página

HTTP 500

Causas prováveis:

O site está em manutenção.

O site tem um erro de programação.

 

Você pode tentar:

Atualizar a página.

 

Voltar para a página anterior.

bom, espero que desta vez as respostas estjam mais claras, e novamente obrigado pela ajuda.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Note

In older versions of PHP, the mysql extension does not support the authentication protocol in MySQL 4.1.1 and higher. This is true regardless of the PHP version being used. If you wish to use the mysql extension with MySQL 4.1 or newer, you may need to follow one of the options discussed above for configuring MySQL to work with old clients. The mysqli extension (stands for "MySQL, Improved"; added in PHP 5) is compatible with the improved password hashing employed in MySQL 4.1 and higher, and no special configuration of MySQL need be done to use this MySQL client library. For more information about the mysqli extension, see http://php.net/mysqli.

http://dev.mysql.com/doc/refman/5.1/en/old-client.html

Compartilhar este post


Link para o post
Compartilhar em outros sites

Note

In older versions of PHP, the mysql extension does not support the authentication protocol in MySQL 4.1.1 and higher. This is true regardless of the PHP version being used. If you wish to use the mysql extension with MySQL 4.1 or newer, you may need to follow one of the options discussed above for configuring MySQL to work with old clients. The mysqli extension (stands for "MySQL, Improved"; added in PHP 5) is compatible with the improved password hashing employed in MySQL 4.1 and higher, and no special configuration of MySQL need be done to use this MySQL client library. For more information about the mysqli extension, see http://php.net/mysqli.

http://dev.mysql.com/doc/refman/5.1/en/old-client.html

 

Opa tudo certo cara???

 

Bom primeiramente gostaria de agradecer pela ajuda e empenho em me ajudar, e gostaria de dizer que sanei o problema.

É o seguinte, sapeando pelo site do PHP.net achei um tópico falando sobre o mysql_connect e que ele dá erro as vezes no windows 7 e no windows vista.

 

Pelo que entendi é o seguinte:

o vista e o 7 tratam o localhost não só como 127.0.0.1, mas também como ::1, e é isso que gera o erro aparentemente. para resolver é necessário editar o arquivo hosts, que fica em:

c:\windows\system32\drivers\etc\hosts

 

nas linhas aseguir é só deixar do jeito que deixei que funciona legal.

# localhost name resolution is handled within DNS itself.
	127.0.0.1       localhost
#	::1             localhost

Ou seja, basta comentar a linha que atribui o ::1 ao localhost também que resolve o problema.

 

Novamente Muito obrigado pela ajuda prestada e pelo tempo dispensado,

Abraços.

Compartilhar este post


Link para o post
Compartilhar em outros sites

tinha voltado aqui pra perguntar se você tinha feito a edição do hosts

 

C:\Windows\System32\drivers\etc\hosts

 

adicinar isso:

127.0.0.1   localhost

 

o problema está no conector mysql nativo do php

 

a partir do php5.3 é utilizado cliente mysql nativo mysqlnd

 

não usa mais o libmysql.dll

 

esse novo conector não reconhece named pipe, por isso, deve-se especificar no arquivo hosts do windows.

 

 

 

bom que resolveu.

Compartilhar este post


Link para o post
Compartilhar em outros sites

tinha voltado aqui pra perguntar se você tinha feito a edição do hosts

 

C:\Windows\System32\drivers\etc\hosts

 

adicinar isso:

127.0.0.1   localhost

 

o problema está no conector mysql nativo do php

 

a partir do php5.3 é utilizado cliente mysql nativo mysqlnd

 

não usa mais o libmysql.dll

 

esse novo conector não reconhece named pipe, por isso, deve-se especificar no arquivo hosts do windows.

 

 

 

bom que resolveu.

 

É, isso já estava me dando um nó no cérebro, o delphi provavelmente usa o libmhysql.dll para a conexão, por isso conectou eu acho, mas agora funcionou legal, obrigado mesmo pela ajuda.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá amigos,

 

Desculpe a minha ignorância mas acho que o meu problema aqui é o mesmo de vocês e que consta aqui como resolvido.

Mas estou com uma dúvida, desculpe novamente pela pergunta, mas estou iniciando o aprendizado em relação a isso e por isso da dúvida.

Nesse caso ai de editar esse arquivo nesse endereço: C:\Windows\System32\drivers\etc\hosts

 

1. como sei a extenção desse arquivo, no caso edita ele com o Wordpad mesmo né?

2. e como salva esse arquivo ai? com que extenção, enfim...

 

Bom... valeu desde já.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.