Ir para conteúdo

Arquivado

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

halfar

CONFIGURACAO PHP E APACHE

Recommended Posts

Estou com dificuldades de configurar o apache e php no meu computador.

Tenho windows 7 starter, com 32 bits.

Estou instalando o apache versão httpd-2.4.25-win32-VC14, e php php-5.4.9-Win32-VC9-x86.

Já venho a dias tentanto instalar, vasculhei vários sites atrás de informação, mas nada resolve.

Quando vou executar o apache aparece um monte de erro de falta de dlls, umas 12 dlss, que baixei todas e os erros sumiram. No entanto, como sempre existe uma pedra enorme

no meio do caminho, a última mensagem de erro (que espero realmente ser a última mensagem), diz o seguinte: "O aplicativo não pode ser inicializado corretamente (0xc0000142)."

E não consigo achar uma resposta que me diga o motivo deste erro.

Estou postando aqui minha configuração do apache para ver se alguem tem uma luz:

 

Spoiler

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

pois é, acho que vou ter que partir para usar um destes.

é que quero realmente desvendar este mistério, quero aprender como se faz.

 

Compartilhar este post


Link para o post
Compartilhar em outros sites
1 hora atrás, Alaerte Gabriel disse:

Já desabilitou o servidor WEB que vem padrão no windows 7 ?

Alaerte, só um complemento, por padrão o windows 7 starter não vem com o IIS habilitado, a menos que ele tenha habilitado isso, acho difícil o problema ser esse, ainda mais pela descrição do problema, pois ele menciona erros de DLL, provavelmente faltou instalar o você.

Halfar, eu escrevi alguns posts falando sobre a configuração do ambiente na unha, veja se te ajuda:

http://blog.eximiaweb.com.br/tutorial-php-instalando-o-php/

 

Atenciosamente,

Compartilhar este post


Link para o post
Compartilhar em outros sites

Verdade Amigo @RodriAndreotti, Não me atentei para versão do 7. Mais ele é chatinho, tive os mesmos problemas e corrigi dessa forma, desabilitando não só o IIS, mais alguma outra coisa ao qual não me lembro, que gerava justamente esse ultimo erro que ele menciona.

Compartilhar este post


Link para o post
Compartilhar em outros sites
10 minutos atrás, Alaerte Gabriel disse:

Verdade Amigo @RodriAndreotti, Não me atentei para versão do 7. Mais ele é chatinho, tive os mesmos problemas e corrigi dessa forma, desabilitando não só o IIS, mais alguma outra coisa ao qual não me lembro, que gerava justamente esse ultimo erro que ele menciona.

Acontece, já passei muito perrengue com isso também... kkk.

Outra coisa que sempre dá uma bela encrenca é o bendito do skype que também usa a porta 80, então tem que lembrar de ir nas preferências de conexão dele e desativar o uso, mas num primeiro instante creio que seja as DLLs do você mesmo.

Vamos aguardar a resposta dele pra ver.

Compartilhar este post


Link para o post
Compartilhar em outros sites

pois é, acho que vou ter que partir para usar um destes.

é que quero realmente desvendar este mistério, quero aprender como se faz.

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

bem,  não teve jeito mesmo. Li com atenção todos os comentarios aqui do post, desativei o IIS porque eu realmente havia ativado, mas o erro persiste.

Instalei o laragon, e com ele, a principio deu erro,  o apache nao estava conectando, mas foi fácil de resolver, foi somente trocar a porta 80 para 8080, que aliás é a padrão do Apache (creio que estou certo).

Todavia, agora apareceu outra montanha no caminho. O mysql não quer funcionar também.  Eu tenho o mysql que havia instalado anteriormente e que chegou a funcionar. Agora não acessa mais. O mysql do laragon também não funciona. Aqui fico na dúvida, pois ele tenta conectar através porta padrao do mysql (3306), mas não consegue. Fiz então alteração da porta, e aqui fica minha dúvida, pois no mysql do laragon existem diversos arquivos de configuração onde aparecem estas portas do mysql, são os arquivos my, my-huge, my-innodb-heavy-4G, my-large, my-medium, my-small. Alterei em todos estes arquivos, mas o laragon continua conectando na porta 3306. Será que tem algum outro local para alterar??? Saberiam dizer???

Eu já invoquei as forças do céus e não resolve.

Já invoquei as forças do inferno e dá na mesma.

Agora vou fazer um pacto de sangue...

Antigamente tinha o windows xp e tinha um programa famoso na net (que faz a mesma coisa que o laragon), utilizei por um bom tempo ele, nunca deu problema. 

Agora tá um caos...

Obrigado a todos.

OBS: Estou anexando uma imagem de erro que o mysql está gerando. 

 

 

 

mensa.jpg

Compartilhar este post


Link para o post
Compartilhar em outros sites

ah... estive observando a mensagem de erro (conforme aparece na imagem que enviei), diz que não consegue encontrar um arquivo no diretorio c:/apache...etc... Mas oras, o laragon está instalando em c:/laragon...etc...Nada a ver...tá me parecendo mais um bug do programa laragon.

Compartilhar este post


Link para o post
Compartilhar em outros sites
13 horas atrás, halfar disse:

bem,  não teve jeito mesmo. Li com atenção todos os comentarios aqui do post, desativei o IIS porque eu realmente havia ativado, mas o erro persiste.

Instalei o laragon, e com ele, a principio deu erro,  o apache nao estava conectando, mas foi fácil de resolver, foi somente trocar a porta 80 para 8080, que aliás é a padrão do Apache (creio que estou certo).

Todavia, agora apareceu outra montanha no caminho. O mysql não quer funcionar também.  Eu tenho o mysql que havia instalado anteriormente e que chegou a funcionar. Agora não acessa mais. O mysql do laragon também não funciona. Aqui fico na dúvida, pois ele tenta conectar através porta padrao do mysql (3306), mas não consegue. Fiz então alteração da porta, e aqui fica minha dúvida, pois no mysql do laragon existem diversos arquivos de configuração onde aparecem estas portas do mysql, são os arquivos my, my-huge, my-innodb-heavy-4G, my-large, my-medium, my-small. Alterei em todos estes arquivos, mas o laragon continua conectando na porta 3306. Será que tem algum outro local para alterar??? Saberiam dizer???

Eu já invoquei as forças do céus e não resolve.

Já invoquei as forças do inferno e dá na mesma.

Agora vou fazer um pacto de sangue...

Antigamente tinha o windows xp e tinha um programa famoso na net (que faz a mesma coisa que o laragon), utilizei por um bom tempo ele, nunca deu problema. 

Agora tá um caos...

Obrigado a todos.

OBS: Estou anexando uma imagem de erro que o mysql está gerando. 

 

 

 

mensa.jpg

Bom, eu pessoalmente não sou muito fã dos pacotes, mas se quiser optar por eles, tem  o XAMPP também.

 

No seu lugar eu tentaria entender o que está acontecendo e tentar resolver, isso te trará um aprendizado maior.

 

A porta padrão do apache, é a 80 para http e a 443 para https, se você mudar a porta para 8080, vai precisar informar ela sempre que precisar acessar a url no navegador (não que isso seja um problema... rs), mas neste caso creio que alguma outra coisa está bloqueando sua porta 80, você pode tentar descobrir qual é este programa usando o monitor de recursos do windows (Tecla windows + R → resmon → Enter).

Dentro da aba "Rede" na seção portas de escuta, vai estar a porta e o programa que está usando ela.

 

O mesmo vale para o mysql, e, como você mencionou que já tinha funcionado o anteriormente, provavelmente é ele que está barrando a nova instalação.

 

Só uma curiosidade, você chegou a tentar acompanhar aquele link que mandei?

 

Espero que ajude.

Compartilhar este post


Link para o post
Compartilhar em outros sites
18 minutos atrás, RodriAndreotti disse:

A porta padrão do apache, é a 8 para http e a 443 para https

 

Ele se esqueceu do " 0 ". é 80.

Compartilhar este post


Link para o post
Compartilhar em outros sites
1 minuto atrás, Alaerte Gabriel disse:

 

Ele se esqueceu do " 0 ". é 80.

Opa... obrigado, acho que meu teclado falhou... rs

Compartilhar este post


Link para o post
Compartilhar em outros sites
6 horas atrás, RodriAndreotti disse:

Bom, eu pessoalmente não sou muito fã dos pacotes, mas se quiser optar por eles, tem  o XAMPP também.

 

No seu lugar eu tentaria entender o que está acontecendo e tentar resolver, isso te trará um aprendizado maior.

 

A porta padrão do apache, é a 80 para http e a 443 para https, se você mudar a porta para 8080, vai precisar informar ela sempre que precisar acessar a url no navegador (não que isso seja um problema... rs), mas neste caso creio que alguma outra coisa está bloqueando sua porta 80, você pode tentar descobrir qual é este programa usando o monitor de recursos do windows (Tecla windows + R → resmon → Enter).

Dentro da aba "Rede" na seção portas de escuta, vai estar a porta e o programa que está usando ela.

 

O mesmo vale para o mysql, e, como você mencionou que já tinha funcionado o anteriormente, provavelmente é ele que está barrando a nova instalação.

 

Só uma curiosidade, você chegou a tentar acompanhar aquele link que mandei?

 

Espero que ajude.

 

 

Opa, 

eu vi aquele link sei sim, alias ja tinha dado uma olhada nele nas minhas pesquisas pela net, e acabo de fazer os procedimentos utilizando o FASTCGI, mas ocorre o mesmo problema quando executo o httpd.exe. Erro 0000142.

 

Aproveitando o ensejo, no seu link há uma parte onde voce pede para executar o prompt do dos para testar as configurações, mas quando digito por exemplo o httpd -t,  retorna mensagem informando que tal comando não é reconhecido como um comando interno... Saberia dizer por que??

 

Executei tambem a sua orientacao executando o resmon, de fato, até por curiosidade aparece la duas execucoes do httpd.exe na porta 80. É normal isso? Duas execuções? Não deveriam sumir ambas uma vez que o programa não foi executado corretamente?

 

Mas alterei no script do mysql informando uma porta que nao está em uso, mas tambem gera erro,  não consegue se conectar.

No laragon, o apache acessa, mas o mysql do laragon creio que há um bug do laragon mesmo, a mensagem de erro é meio estranha. Então estou tentando fazer funcionar o mysql que eu mesmo instalei. Vou reinstalar o mysql e ver no que dá.

 

Bem, por ora, valeu as dicas, fico muito grato.

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites
1 minuto atrás, halfar disse:

 

 

Opa, 

eu vi aquele link sei sim, alias ja tinha dado uma olhada nele nas minhas pesquisas pela net, e acabo de fazer os procedimentos utilizando o FASTCGI, mas ocorre o mesmo problema quando executo o httpd.exe. Erro 0000142.

 

Aproveitando o ensejo, no seu link há uma parte onde voce pede para executar o prompt do dos para testar as configurações, mas quando digito por exemplo o httpd -t,  retorna mensagem informando que tal comando não é reconhecido como um comando interno... Saberia dizer por que??

 

Executei tambem a sua orientacao executando o resmon, de fato, até por curiosidade aparece la duas execucoes do httpd.exe na porta 80. É normal isso? Duas execuções? Não deveriam sumir ambas uma vez que o programa não foi executado corretamente?

 

Mas alterei no script do mysql informando uma porta que nao está em uso, mas tambem gera erro,  não consegue se conectar.

No laragon, o apache acessa, mas o mysql do laragon creio que há um bug do laragon mesmo, a mensagem de erro é meio estranha. Então estou tentando fazer funcionar o mysql que eu mesmo instalei. Vou reinstalar o mysql e ver no que dá.

 

Bem, por ora, valeu as dicas, fico muito grato.

 

 

Então, o httpd -t ele só é reconhecido pelo sistema após você inserir o caminho do apache (pasta de instalação/bin) no path do sistema, e reiniciar o computador, porém se você quiser realizar o teste antes de reiniciar, você pode utilizar o caminho completo do executável que funciona, supondo que você usou a mesma estrutura de pastas que eu:

 

c:\dev\apache24\bin\httpd -t

 

Com relação a estas duas "aparições", elas devem estar relacionadas as tentativas anteriores que você realizou e o serviço ficou instalado, visto que o laragon você precisou mudar para a porta 8080, é normal o apache rodar em dois processos.

 

Veja um print do meu resmon em anexo.

 

No caso do mysql, o arquivo principal de configuração dele é o my.ini (ou my.cnf, ou my.conf, depende da instalação), os demais são configurações complementares, então é necessário trocar a porta neste arquivo primeiramente.

 

Vai testando ai, qualquer dúvida é só gritar. :tounge_wink:

 

 

Apache.PNG

Compartilhar este post


Link para o post
Compartilhar em outros sites

continuando minha saga com apache e php, instalei uma versao do apache, que alias peguei la no site do apache haus, e funcionou. No entanto não funciona o php. 

 

A versão do apache que usei é httpd-2.4.25-x86-vc11-r1,  sei que existe versões vc6, 11 , etc... Dei uma olhada nos sites para entender estas coisas todas, mas parece briga de gato e rato, funciona para certas versoes do visual para instalacao windows,  sé thread-safe ou não... Alguem saberia me explicar alguma coisa sobre isto?? 

 

Então, qual versão do php posso utilizar com esta versao do apache que baixei??

Compartilhar este post


Link para o post
Compartilhar em outros sites

@halfar,

 

Primeiro, um adendo: Apache é uma fundação, não um software; podemos ter Apache Tomcat, Apache Lucene, Apache httpd, etc.

 

Segundo, a partir da versão 5.4 o PHP já possui um servidor web embutido. Se seu objetivo for trabalhar localmente, testar, etc, você pode usar o php para servir:

php -S localhost:8080

Terceiro, respondendo diretamente a pergunta de qual versão do PHP você pode usar: você pode usar qualquer versão que quiser. Mas a sugestão é que utilize a última estável, que é a 7.1.1.

 

:smile:

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por ILR master
      Fala galera, tudo bem?
       
      Tenho o seguinte codigo:
       
       class Data {
      public static function ExibirTempoDecorrido($date)
      {
          if(empty($date))
          {
              return "Informe a data";
          }
          $periodos = array("segundo", "minuto", "hora", "dia", "semana", "mês", "ano", "década");
          $duracao = array("60","60","24","7","4.35","12","10");
          $agora = time();
          $unix_data = strtotime($date);
          // check validity of date
          if(empty($unix_data))
          {  
              return "Bad date";
          }
          // is it future date or past date
          if($agora > $unix_data) 
          {  
              $diferenca     = $agora - $unix_data;
              $tempo         = "atrás";
          } 
          else 
          {
              $diferenca     = $unix_data - $agora;
              $tempo         = "agora";
          }
          for($j = 0; $diferenca >= $duracao[$j] && $j < count($duracao)-1; $j++) 
          {
              $diferenca /= $duracao[$j];
          }
          $diferenca = round($diferenca);
          if($diferenca != 1) 
          {
              $periodos[$j].= "s";
          }
          return "$diferenca $periodos[$j] {$tempo}";
      }
      }
       
      Funciona redondinho se o valor retornado for de algumas horas, mas...
      Quando passa de dois meses, ele retorna a palavra mess. Deve ser por conta dessa linha
      if($diferenca != 1) 
          {
              $periodos[$j].= "s";
          }
       
      Quero que modre:
       
      2 meses atrás
      e não
      2 mess atrás.
       
      Espero que tenham entendido.
       
      Valeu
    • Por Carlos Web Soluções Web
      Olá...
      Estou tentando fazer o seguinte !!
      Listando dados em tabela !!
      Gostaria que....se na listagem houver 4 linhas...indepedente de seu número de ID, faça a listagem em ID ser em ordem 1 2 3 4 !!
      Exemplo...se tiver uma listagem de dados que está em ID 1 3 3...faça ficar 1 2 3 !!

       
      echo "<table class='tabela_dados' border='1'> <tr> <td>ID</td> <td>Nome Empresa</td> <td>Responsável</td> <td>Telefone 1</td> <td>Telefone 2</td> <td>E-mail 1</td> <td>E-mail 2</td> <td>Endereço</td> <td>CEP</td> <td>Bairro</td> <td>AÇÃO 1</td> <td>AÇÃO 2</td> </tr> "; $sql = "SELECT ID FROM usuarios_dados WHERE Usuario='$usuario'"; $result = $conn->query($sql); $num_rows = $result->num_rows; $Novo_ID = 1; for ($i = 0; $i < $num_rows; $i++) { $registro = $result -> fetch_row(); $sql2 = "UPDATE usuarios_dados SET ID='$Novo_ID' WHERE ID='$Novo_ID'"; $result2 = $conn->query($sql2); $Novo_ID++; } $sql = "SELECT * FROM usuarios_dados"; $result = $conn->query($sql); if ($result->num_rows > 0) { // output data of each row while($row = $result->fetch_assoc()) { echo "<tr> <td>$row[ID]</td> <td>$row[Nome_Empresa]</td> <td>$row[Responsavel]</td> <td>$row[Telefone_1]</td> <td>$row[Telefone_2]</td> <td>$row[Email_1]</td> <td>$row[Email_2]</td> <td>$row[Endereço]</td> <td>$row[CEP]</td> <td>$row[Bairro]</td> <td> <form method='post' action='Editar_Dados.php'> <input type='hidden' name='usuario' value='$usuario'> <input type='hidden' name='senha' value='$senha'> <input type='hidden' name='ID' value='$row[ID]'> <input type='submit' style='padding: 10px;' value='EDITAR'> </form> </td> <td> <form method='post' action='Deletar_Dados.php'> <input type='hidden' name='usuario' value='$usuario'> <input type='hidden' name='senha' value='$senha'> <input type='hidden' name='ID' value='$row[ID]'> <input type='submit' style='padding: 10px;' value='DELETAR'> </form> </td> </tr> "; } } else { echo "0 results"; } $conn->close();  
    • Por ILR master
      Boa tarde pessoal, tudo bem ?
       
      Eu uso o tinymce para cadastro de textos no meu siite, porém, quero fazer um sistema para que os colunistas possam fazer o próprio post.
      O problema do tinymce, é que ele mantém a formatação do texto copiado, como tamanho de fonts, negritos, etc... Quero que o usuário cole o texto e a própria textarea limpe a formatação para que ele formate como quiser.
       
      A pergunta é:
       
      O tinymce tem uma opção para desabilitar a formatação quando um texto é colocado?
      Tem alguma função via java ou php para retirar a formatação assim que o texto é colado?
      Ou é melhor usar um outro editor?
       
      Agradeço deste já.
    • Por Giovanird
      Olá a todos!
      Tenho uma pagina que possui uma DIV onde coloquei uma pagina PHP.
      Uso a função setInterval para atualizar a pagina inclusa dentro da DIV.
      O problema é que ao acessar o site , a DIV só me mostra a pagina inclusa somente quando completo o primeiro minuto.
      Preciso que a pagina inclusa já inicie carregada
       
      Meu código JavaScript e a DIV com a pagina PHP
       
      <script> function atualiza(){ var url = 'direita.php'; $.get(url, function(dataReturn) { $('#direita').html(dataReturn); }); } setInterval("atualiza()",60000); </script> <div> <span id="direita"></span> </div>  
    • Por ILR master
      Fala pessoal.
       
      Seguinte:
       
      Quero selecionar duas tabelas e mostrar com resultados intercalados. Abaixo segue um código explicando para vcs terem uma ideia.
       
      $consulta = "SELECT A.*, B.* FROM tabela1 A, tabela2 B'";
      $resultado = mysqli_query($conexao, $consulta) or die ("erro");
      while($busca = mysqli_fetch_array($resultado)){
       
      print $busca['cod_evento']; --> traz o código da tabela1 
      print $busca['titulo_evento']; -->  traz o titulo da tabela1
      print $busca['cod_noticia']; --> traz o código da tabela2
      print $busca['titulo_noticia']; --> traz o tituloda tabela2
       
      }
       
      Espero que entendam. Grato
       
×

Informação importante

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