Posso sobrescrever um PHP “make install” com PHP “yum”?

2

Eu tentei instalar o PHP baixando o arquivo .gz de outro computador, transferindo-o para o Linux PC e fazendo o processo tar, ./configure, make e make install.

Mas eu gosto de ir a algum lugar.

O problema:

Carregar qualquer página PHP mostra os códigos PHP, ao contrário do site adequado. Agora, eu tentei muitas coisas para fazer isso funcionar, e até fiz uma pergunta sobre isso, mas até agora, sem sorte. Estranho que ele funcione na linha de comando, mas o navegador não consegue exibi-lo.

A primeira e única vez que comecei a trabalhar com PHP foi quando usei o yum para obtê-lo. Então eu quero tentar de novo.

No entanto, eu não tenho certeza das conseqüências de fazer um yum install php quando o PHP já está instalado no meu sistema.

O que eu tentei:

Minhas tentativas de corrigir o problema "Exibir códigos PHP" é uma lista longa, mas para resumir:

  • PHP reinstalado (usando o make, a mesma instalação que quero remover agora)
  • Configure o httpd.conf - com resultados variados. Modificar o arquivo httpd.conf absolutamente quebra o apache, por algum motivo.

Quanto aos meus problemas em se livrar do PHP existente:

  • Eu tentei entrar no diretório onde extraí o material do php e digitar make uninstall , mas isso só retornou No rule to make target 'uninstall'. Stop.

O sistema:

  • Fedora 19 x86_64
  • Oracle 11g
  • Apache 2.4.6

Espero que alguém possa ajudar e agradeço antecipadamente a todos que quiserem. Este problema já dura há muito tempo.

    
por zack_falcon 20.12.2013 / 07:05

2 respostas

2

então isso parece um problema com o Apache na minha opinião. Você está carregando o PHP no seu arquivo httpd.com? Eu sugiro que as seguintes configurações estejam presentes ..

LoadModule php5_module modules/libphp5.so

<FilesMatch \.php$>
    SetHandler application/x-httpd-php
</FilesMatch>


<FilesMatch "\.ph(p[2-6]?|tml)$">
    SetHandler application/x-httpd-php
</FilesMatch>

<FilesMatch "\.phps$">
    SetHandler application/x-httpd-php-source
</FilesMatch>


RewriteEngine On
RewriteRule (.*\.php)s$ $1 [H=application/x-httpd-php-source]

Depois, certifique-se de reiniciar o Apache. Espero que ajude.

    
por 20.12.2013 / 07:19
1

o fato de seu interpretador de php funcionar na linha de comando mostra que funciona. se o navegador tentar baixar os arquivos em vez do site de exibição, isso ocorre porque o Apache está mal configurado e a negociação de conteúdo não informa ao navegador que tipo de conteúdo está prestes a enviar. Do topo da minha cabeça, você precisa definir um manipulador no httpd.conf para permitir que o Apache saiba que é capaz de interpretar o código php. No entanto, se você está lutando para configurar isso, eu definitivamente recomendo que você instale o php com o seu gerenciador de pacotes.

não deixe de remover sua primeira instalação com

faça a desinstalação (do seu arquivo Make tem este alvo) ou removendo a pasta de prefixo, se possível.

    
por 20.12.2013 / 07:21