Apache tranca e não volta a executar

Iniciado por maurov, 11 de Maio de 2011, 18:36

tópico anterior - próximo tópico

maurov

Instalei LAMP e tudo ficou funcionando. Apache "It Runs!", fiz um phpinfo.php que abre todas as informações do PHP5.
Ao rodar um html que chama um PHP dentro, o apache pergunta se quero abrir com geany ou fazer download, não executa o PHP. Depois disso, nem o phpinfo ele volta a executar, faz a pergunta de geany ou download.
Já reinstalei o apache2, já criei outra partição no disco para deixar um ambiente só de desenvolvimento e instalei tudo de novo, e já fiz o tradicional limpar cache. Não sei o que fazer para o sistema voltar a executar. Segue a parte do form no html e depois o PHP. Como sou novato, deve ter um erro aí que não consigo achar.
"
...
<form method="post" id="caixalogin" action="login_script.php?go" name="loginpage">
  <div style="text-align: center;">
  </div>
<table style="text-align: left; width: 450px; margin-left: auto; margin-right: auto;" border="1" cellpadding="3" cellspacing="0">
    <tbody>
      <tr>
        <td style="vertical-align: middle; width: 111px; text-align: right;">Usuario:<br>
        </td>
        <td style="vertical-align: top; width: 339px;"><input size="30" id="caixausuario" name="usuario" type="text"><br>
        </td>
      </tr>
      <tr>
        <td style="vertical-align: middle; text-align: right;">Senha:<br>
        </td>
        <td style="vertical-align: top; width: 339px;"><input size="30" id="caixasenha" name="senha" type="text"><br>
        </td>
      </tr><tr align="center">
        <td colspan="2" rowspan="1" style="vertical-align: top; height: 29px;"><input name="Submit" value="entrar" type="submit"><br>
        </td>
      </tr>
    </tbody>
  </table>
  <br>
</form>
...
"
E o  PHP é o seguinte:
"
<?php
$hostname = 'localhost';
$db = mysql_connect($hostname, $_POST[usuario], $_POST[senha]);
$banco = 'banco1';
mysql_select_db($banco, $db);
header ("location: bem_vindo.html");
?>
"
No html, no form, tenho dúvida se devo usar go depois da chamada ao PHP. Vlw.

fpissarra

Verifique se o módulo php5 está carregado no seu httpd.conf, senão, instale:

sudo apt-get install php5 libapache2-mod-php5

Pode ser que isso ajude...

irtigor

Sem "go", você pode usar o espaço depois da interrogação pra passar alguma coisa por get. O atributos id e name devem possuir o mesmo valor (se pertencem a um mesmo elemento).

fpissarra

Citação de: irtigor online 12 de Maio de 2011, 07:30
Sem "go", você pode usar o espaço depois da interrogação pra passar alguma coisa por get. O atributos id e name devem possuir o mesmo valor (se pertencem a um mesmo elemento).

Não acho que essas duas coisas tenham alguma influência, há que o "go" é passado na Query String e o script pega seus dados do form e os atributos id e name podem ser diferentes e acessíveis apenas pelo DOM via document.getElementById() e document.getElementsByName(), nada tendo haver com o script em login_script.php.

irtigor

Reinstalar também não influencia (se não existem mudanças nas configurações/programa), fora que ele já havia tentado. Fiz recomendações de boas práticas [1][2]. O que vai resolver o problema é olhar o log.

maurov

Oi pessoal, obrigado pela ajuda.
Vou seguir as dicas que estão trazendo. E qual log de erro devo transcrever aqui?
[ ]

fpissarra

Citação de: irtigor online 12 de Maio de 2011, 12:46
Reinstalar também não influencia (se não existem mudanças nas configurações/programa), fora que ele já havia tentado. Fiz recomendações de boas práticas [1][2]. O que vai resolver o problema é olhar o log.

Concordo, a dica sobre a instalação de libapache2-mod-php5 deveu-se a possibilidade dessa instalação modificar automaticamente a configuração do apache2, adicionando as linhas:

# Use for PHP 5.x:
LoadModule php5_module modules/libphp5.so
AddHandler php5-script php


Pode ser que a simples instalação do módulo funcione, pode ser que não... De qq forma, é útil verificar a configuração do Apache e, é claro, dar uma olhada nos logs.

maurov

olhei pelo Synaptic.
php5 e libapache2-mod-php5 estão carregados instalados.
Seguindo o conselho, reinstalei o libapache2-mod-php5 para ver se funcionava, mas não deu resultado.

Achei um httpd.conf em /etc/apache2 , mas este arquivo está vazio. Mesmo assim vazio, quando da instalação, o phpinfo.php funcionava. Depois que tentei executar meus scripts (cfe início do tópico) é que trancou.

Reproduzo abaixo o final do arquivo /var/log/apache2 onde fala algo sobre o localhost, talvez a fonte do erro.

[Fri May 13 09:34:25 2011] [notice] Apache/2.2.14 (Ubuntu) PHP/5.3.2-1ubuntu4.9 with Suhosin-Patch configured -- resuming normal operations
[Fri May 13 09:37:37 2011] [notice] caught SIGTERM, shutting down
PHP Deprecated:  Comments starting with '#' are deprecated in /etc/php5/apache2/conf.d/mcrypt.ini on line 1 in Unknown on line 0
[Fri May 13 10:12:42 2011] [notice] Apache/2.2.14 (Ubuntu) PHP/5.3.2-1ubuntu4.9 with Suhosin-Patch configured -- resuming normal operations
[Fri May 13 10:22:15 2011] [notice] Graceful restart requested, doing restart
apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
PHP Deprecated:  Comments starting with '#' are deprecated in /etc/php5/apache2/conf.d/mcrypt.ini on line 1 in Unknown on line 0
[Fri May 13 10:22:16 2011] [notice] Apache/2.2.14 (Ubuntu) PHP/5.3.2-1ubuntu4.9 with Suhosin-Patch configured -- resuming normal operations.

maurov

outra informação, fiz um:
/etc/init.d/apache2 reload

e vem o retorno:
* Reloading web server config apache2
apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName

fpissarra

Citação de: maurov online 13 de Maio de 2011, 10:38
olhei pelo Synaptic.
php5 e libapache2-mod-php5 estão carregados instalados.
Seguindo o conselho, reinstalei o libapache2-mod-php5 para ver se funcionava, mas não deu resultado.

Ok, foi só uma idéia!

Citação de: maurov online 13 de Maio de 2011, 10:38
Achei um httpd.conf em /etc/apache2 , mas este arquivo está vazio. Mesmo assim vazio, quando da instalação, o phpinfo.php funcionava. Depois que tentei executar meus scripts (cfe início do tópico) é que trancou.

Procure por httpd.conf em outro lugar... O arquivo httpd.conf tem que existir, e não estar vazio. Lá existem as instruções para carga dos módulos, sobre a porta onde o apache receberá as requisições http e/ou https, sobre o "full qualified name" do servidor httpd, dentre outras coisas.
Se o apache estava reconhecendo php5, então o módulo foi carregado. O que sugere um httpd.conf não vazio.

Procure assim:

# find /etc/ -name httpd.conf

maurov

#10
feito