2013-12-14 31 views
9

Problemi con PHP sul mio stack LAMP: gli script PHP non vengono analizzati affatto. I ha installato Ubuntu 13.10 su una macchina chiaro ... E vedo ora c'è solo chiaro HTML della pagina, ma PHP tag sono proprio come il testoPHP dello stack LAMP non funziona (Ubuntu 13.10/Apache 2.4.6)

In realtà, quello che ho:

$/usr/sbin/apache2ctl stato | grep Versione

Server Version: Apache/2.4.6 (Ubuntu) PHP/5.5.3-1ubuntu2.1 

$ tail -n 1 /var/log/apache2/error.log

[Sat Dec 14 19:33:16.307184 2013] [core:notice] [pid 15457] AH00094: Command line: '/usr/sbin/apache2' 

$ apache2ctl -S

VirtualHost configuration: 
*:80     is a NameVirtualHost 
     default server videosurgeon.ll (/etc/apache2/sites-enabled/vs.conf:1) 
     port 80 namevhost videosurgeon.ll (/etc/apache2/sites-enabled/vs.conf:1) 
     port 80 namevhost videosurgeon.ll (/etc/apache2/sites-enabled/vs.conf:1) 
ServerRoot: "/etc/apache2" 
Main DocumentRoot: "/var/www" 
Main ErrorLog: "/var/log/apache2/error.log" 
Mutex default: dir="/var/lock/apache2" mechanism=fcntl 
Mutex mpm-accept: using_defaults 
Mutex watchdog-callback: using_defaults 
Mutex rewrite-map: using_defaults 
PidFile: "/var/run/apache2/apache2.pid" 
Define: DUMP_VHOSTS 
Define: DUMP_RUN_CFG 
User: name="www-data" id=33 not_used 
Group: name="www-data" id=33 not_used 

$ apache2ctl -M | grep php

php5_module (shared) 

$ cat /work/VS/httpdocs/test.php

<? phpinfo(); ?> 

$ cat /etc/apache2/sites-enabled/vs.conf

<VirtualHost *:80> 
    ServerAdmin [email protected] 
    ServerName videosurgeon.ll 

    DirectoryIndex index.php index.html index.htm 

    DocumentRoot /work/VS/httpdocs/ 

    <Directory /work/VS/httpdocs/> 
    Options FollowSymLinks MultiViews 
    AllowOverride All 
    Order allow,deny 
    allow from all 
    </Directory> 

    ErrorLog /var/log/apache2/error.log 

    # Possible values include: debug, info, notice, warn, error, crit,alert, emerg. 
    LogLevel notice 

    CustomLog /var/log/apache2/access.log combined 
</virtualHost> 

$/usr/bin/php version

PHP 5.5.3-1ubuntu2.1 (cli) (built: Dec 12 2013 04:22:11) 
Copyright (c) 1997-2013 The PHP Group 
Zend Engine v2.5.0, Copyright (c) 1998-2013 Zend Technologies 
    with Zend OPcache v7.0.3-dev, Copyright (c) 1999-2013, by Zend Technologies 

UPD.1: è mio apache2.conf: http://ge.tt/6Yd8Jj91/v/0


UPD.2: Oggi ho provato a rimuovere tutto e reinstallare LAMP. Il risultato è esattamente lo stesso: PHP non funziona.

sudo apt-get install lamp-server^ 

Ma anche interessante che phpMyAdmin funziona bene. Ho appena installarlo come:

sudo apt-get install php5 php5-cgi phpmyadmin 

Si scopre che lì (in phpMyAdmin) sono alcune impostazioni che gli danno utilizzare PHP ...

+3

Sei sicuro che è installato modphp. Potresti aver installato una versione non apache di php: prova 'apt-get install -y apache2-mod-php5; service apache2 restart' – ldrumm

+0

Se il suggerimento sopra riportato fallisce, puoi anche provare l'opzione 'LAMP server' in tasksel ($ sudo tasksel). – TeTeT

+0

Sto avendo lo stesso problema. costruire un ambiente di sviluppo su Debian. hai trovato una soluzione a questo problema alla fine? – Pitt

risposta

1

Verificare se si dispone di queste linee nel vostro httpd.conf:

AddType application/x-httpd-php   .php 
AddType application/x-httpd-php-source .phps 

Assicurarsi inoltre che il modulo PHP viene caricato:

LoadModule php5_module  modules/mod_php55.so 

Dopo di che, riavviare apache e cancellare la cache del browser prima di riprovare.

+0

non esiste alcun httpd.conf – xiaose

+0

c'è apache2.conf – xiaose

+0

è mio apache2.conf: http://ge.tt/6Yd8Jj91/v/0 – xiaose

11

Appena avuto lo stesso problema. Devi usare <?PHP invece di <? o modificare la seguente configurazione:

/etc/php5/apache2/php.ini

; This directive determines whether or not PHP will recognize code between 
; <? and ?> tags as PHP source which should be processed as such. It's been 
; recommended for several years that you not use the short tag "short cut" and 
; instead to use the full <?php and ?> tag combination. With the wide spread use 
; of XML and use of these tags by other languages, the server can become easily 
; confused and end up parsing the wrong code in the wrong context. But because 
; this short cut has been a feature for such a long time, it's currently still 
; supported for backwards compatibility, but we recommend you don't use them. 
; Default Value: On 
; Development Value: Off 
; Production Value: Off 
; http://php.net/short-open-tag 
short_open_tag = On