Recientemente he intentado instalar PHP y Apache en mi computadora. Después de muchas horas, están instaladas. He modificado los archivos httpd.conf y php.ini como dicen todos. Luego creé un script PHP simple:
<?php phpinfo(); ?>
Pero cuando trato de ejecutarlo, http://127.0.0.1/phpinfo.php
solo muestra el código fuente en lugar de ejecutarlo. Estoy usando Apache 2, PHP 5 y Windows Vista.
LÍNEAS EDITADAS:
PHP.INI:
short_open_tag = On
HTTPD.CONF
LoadModule php5_module "C:/php/php5apache2_2.dll"
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
PHPIniDir "C:/php"
<?php echo "Hello world"; ?>
¿muestra Hola mundo? Si muestra el código, ¡cómo dijo @RabNawaz que su servidor no está configurado correctamente!http://localhost/
ohttp://127.0.0.1/
Respuestas:
¡Debe habilitar php! Verifique la carpeta
mods-enabled
en el directorio de Apache (predeterminado:)/etc/apache2/
para ver si encuentra un archivo llamadophp
. No recuerdo la extensión, pero creo que sí.so
.También verifique
/var/log/apache2/error.log
si tiene otros errores.fuente
a2enmod php7.0
y resolvió mi problema. ¡Tomó todo el día para llegar a esta publicación de alguna manera!php
enmods-enabled
, ¿ahora qué? Esta respuesta no explica las cosas¡Vaya, muchas soluciones aquí! Esto es lo que hice en Ubuntu 16.04 :
fuente
--reinstall
a apt-get. Es posible que la instalación del módulo php / apache esté sucia.Considering conflict php5 for php7.0
,Considering conflict mpm_worker for mpm_prefork
, etc ... y no apache2 restartConsidering conflict php5 for php7.2
ir a/etc/apache2/mods-available
y eliminarphp5.*
Para PHP 7 (también puede aplicarse a versiones anteriores), pero tuve que hacer esto:
Agregue esto al final de /etc/apache2/apache2.conf
Ejecute esto desde la terminal:
Entonces no olvide reiniciar Apache para que sepa que ha cambiado cosas:
Este es un resumen de: https://www.atlantic.net/community/howto/try-php7-lamp-ubuntu-14-04/
fuente
abre el archivo
/etc/apache2/httpd.conf
y cambio
dentro
Así que no comentar la carga del módulo PHP en
httpd.conf
fuente
Encontré esto para resolver mi problema relacionado. Lo agregué a la
<Directory>
sección relevante :fuente
Una respuesta diferente que funcionó para mí. Es eso, para instalar
[sudo] apt-get install libapache2-mod-php5.X
fuente
De acuerdo, si ha intentado lo que le dijeron anteriormente o antes (que son posibles razones) y aún muestra el código en lugar de ejecutarlo, entonces hay una cosa que está haciendo mal que no se ha abordado. La URL que usó para acceder a su código php; algunas personas intentan ejecutar su código php simplemente arrastrando el archivo .php al navegador web. esta es una práctica incorrecta y podría provocar este tipo de problema. si ha guardado un archivo como "test.php" en la carpeta C: // wamp / www, entonces debe acceder a este archivo de esta manera: localhost: //test.php. este tipo de error surgirá cuando acceda a él de esta manera: localhost: //wamp/www/test.php
Espero haber ayudado a alguien. o / ~ Daniel
fuente
Publicar lo que funcionó para mí en caso de que ayude a alguien en el futuro, aunque es un caso inusual.
Había configurado un controlador para obligar a mi servidor web a usar una versión de php superior a la predeterminada. Había 5.1, pero quería 5.6, así que tenía esto:
en mi archivo .htaccess.
Al intentar ejecutar mi sitio localmente, tener eso allí hizo que el código php se enviara al navegador. Quitarlo resolvió el problema.
fuente
fuente
Puede eliminar su archivo .htaceess y dejar que el sistema cree uno nuevo (en blanco o básico). Puede ser que algunas líneas que agregó sean declaraciones incorrectas o que algo más adentro esté causando el problema. Luego puede agregar línea por línea desde su antiguo archivo .htaccess para ver qué causó el problema.
Eso funcionó para mí. Las líneas que le decían a la máquina que no mostrara extensiones php fueron un problema en mi caso ( RewriteCond y RewriteRule ). Mi antiguo archivo .htaccess funcionó bien en un servidor compartido, pero este problema apareció cuando cambié a VPS.
fuente
sudo a2enmod headers
ysudo a2enmod rewrite
(no olvide reiniciar Apache).Gracias a otros en este hilo por sus sugerencias. Siguiendo los pasos mencionados, descubrí que el servidor apache no podía comenzar a informar un error de sintaxis en un
load
archivo en formato/etc/apache2/mods-enabled
. Resulta que tanto php7.0 como php7.1 estaban habilitados.y php se vuelve a representar correctamente.
fuente
si el módulo userdir está habilitado y su sitio está en un userdir (~ / public_html), debe verificar /etc/apache2/mods-enabled/php5.conf. La siguiente parte lo hace funcionar (en Ubuntu 14.10 utópico):
fuente
Si es un usuario de ubuntu, después de instalar apache debe ejecutar el siguiente comando en una instalación nueva
En mi caso funciona bien.
fuente
Lo que funcionó para mí:
En httpd.conf activo, busque
Faltaba lo siguiente
Después de reiniciar Apache, los archivos .php se analizan correctamente.
fuente
nada de lo anterior se aplicó o funcionó para mí ... PHP7, Apache Httpd 2.2 en CentOS 6
El hecho es que instalé (todo con yum) php ANTES de Apache ... debe hacer lo contrario: siempre instale Apache primero, luego PHP, y luego funciona ... De hecho, es probable que falte
libphp7.so
ylibphp7-zts.so
en/etc/httpd/modules/
Pude recuperarme de todos modos sin desinstalar PHP. Agregué la línea mágica en
/etc/httpd/conf/httpd.conf
:AddType application/x-httpd-php .php
Y luego ejecuté:yum install php php-mysql
fuente
Para PHP7 y Apache2.4, esto es todo lo que necesita hacer:
Vaya al final e inserte lo siguiente (por sí solo):
Apache ahora ejecutará todo con PHP. Si todo lo que tiene son archivos html y php, entonces esto funcionará bien para usted. Si tiene otros tipos de archivos, deberá adaptar la coincidencia de archivos a su situación. He probado esto con phpMyAdmin y no parece tener ningún problema ... hasta ahora.
Ninguna de esas otras cosas de las que habla toda la gente aquí era necesaria para mí. Cuando puse la cosa "AddType Application ....." en el lugar correcto, Apache me dijo que ese módulo ya estaba cargado y lo saltó.
Puede encontrar más información aquí: https://httpd.apache.org/docs/2.4/mod/core.html#filesmatch
Mi instalación se realizó de la siguiente manera:
También debería leer esto, si no lo ha hecho: https://httpd.apache.org/docs/current/howto/htaccess.html#when
fuente
Esto me estaba sucediendo también cuando ejecutaba $ _POST en MAMP. Todos mis archivos .ini y httpd se configuraron correctamente. Si está manejando formularios y tiene un documento html y publicando la información en un php formhandler que ejecuta $ POST, asegúrese de que está ejecutando el archivo html desde localhost a través de su servidor, y no solo localmente.
Este fue un atajo que hice para ejecutar documentos html, simplemente haciendo clic en el archivo html en mi directorio y abriéndolo en mi navegador web, cuando en realidad para verificar si php se está procesando en su formulario, debe ejecutar su html a través de sus servidores. Un protocolo muy simple que pasé por alto.
Ejemplo:
Incorrecto:
file:///Applications/MAMP/htdocs/form/form.html
Correcto:
http://localhost:your port number/form/form.html
Ahora, el php debe procesarse una vez que haga clic en el botón enviar
fuente
Tuve el mismo problema, causado por la configuración predeterminada del módulo Debian / Ubuntu
suphp
. ConteníasuPHP_Engine off
para todo / usr / share, lo que resultó en que las fuentes php se mostraran en el navegador. Desactivar cona2dismod suphp
fue la solución provisional.fuente
Yo tuve el mismo problema. Cuando ejecuto un archivo php, el navegador web me mostró el código php en lugar de ejecutarlo. Lo había intentado muchas veces: desinstalar / reinstalar el wampserver64, trabajar con la configuración / módulos de PHP / Apache, etc. Después de 2 días: me di cuenta de que cuando intenté ejecutar el archivo php dentro del bloc de notas ++ presionando la combinación predeterminada "ctrl + alt + shift + R "para cromo. Estaba intentando ejecutar mi archivo php como: "archivo /// C: / wamp64 / www / bla / bla .." en la barra de direcciones de mi Chrome. Ese era mi problema. Hice los cambios de acuerdo con la página ¿ Configurar Notepad ++ para ejecutar php en localhost? . Mi problema fue resuelto. Pero después de 2 días ...
fuente
Ejecute Xampp (apache) como administrador. En google chrome, escribe:
localhost/<insert folder name here>/<insert file name>
es decir, si la carpeta que creó es "LearnPhp", el archivo es "chapter1.php", escriba
localhost/LearnPhp/chapter1.php
Creé esta carpeta en la carpeta xampp en la carpeta htdocs que se crea cuando descargas xampp.
fuente
Solución Debian 9:
Agregar al archivo las siguientes líneas:
Entonces corre:
fuente
/etc/apache2/mods-available/php7.2.conf
Algunas veces, si tiene conflictos con la versión de php, sucede Para superarlos, siga los pasos a continuación
Paso 1: lista de Yum instalada | grep 'php'
Paso 2: yum elimina ** tu versión de php **
Paso 3: luego reinicia el apapche
/etc/init.d/httpd restart
oservice apache2 restart
fuente
Esta solución funcionó para mí. Purgué apache2 y lo reinstalé. Ocurrió después de purgar e instalar. Si es la primera instalación, no enfrentaría este problema.
fuente
Probé varias de las soluciones anteriores, sin embargo, la solución en nuestro escenario fue instalar el módulo fpm.
Habíamos instalado httpd antes de php, lo que puede haber tenido algo que ver con el problema, pero para resolverlo, instalamos lo siguiente:
módulo yum instalar php: 7.2
Esto instaló el módulo php-fpm-7.2.11-4.module + el8.1.0 + 5443 + bc1aeb77.x86_64.rpm que luego habilitamos mediante:
systemctl enable - ahora php-fpm
Desde ese punto dejamos el /etc/httpd/conf.d/php.conf por defecto y reiniciamos httpd
reinicio del servicio httpd
Entonces todo funcionó.
Espero que esto ayude, tomó más tiempo del que debería averiguar.
fuente