Visualizzazione dei risultati da 1 a 9 su 9

Discussione: phpinfo() non funziona

  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2010
    Messaggi
    77

    phpinfo() non funziona

    Sto facendo una nuova installazione su Mandriva 2010.0.
    Ho installato l'ambiente LAMP con i comando
    codice:
    task lamp
    da root.
    Se punto il browser a localhost mi visualizza correttamente il messaggio "It works!", segnale che tutto dovrebbe essere a posto, ma se inserisco lo script PHP:
    codice:
    <?php phpinfo(); ?>
    questo non mi visualizza nulla.

    C'è qualche settaggio da fare nel file php.ini? Oppure in http.conf?

    Grazie.

  2. #2
    perché ripeti due volte php

    tu hai scritto:

    codice:
    <?php phpinfo(); ?>
    invece devi scrivere:

    codice:
    <?php info(); ?>

  3. #3
    Originariamente inviato da timberwolf
    perché ripeti due volte php

    tu hai scritto:

    codice:
    <?php phpinfo(); ?>
    invece devi scrivere:

    codice:
    <?php info(); ?>
    Ma e' uno scherzo o dici sul serio?

    Tralasciando assurdita' come questa, il fatto che tu veda "It works!" significa che apache e' installato e funziona correttamente, ma se non viene eseguito lo script con phpinfo() allora vuol dire che non e' abilitato il modulo php. Non conosco direttamente mandriva, ma se in teoria il pacchetto lamp comprende php (come dovrebbe) e' strano che non venga configurato direttamente. Verifica se in /etc/apache2/mods-enabled e' presente un link a php5.conf (almeno cosi' e' su debian).

  4. #4
    Hai ragione ho sbagliato pensavo a tutt'altra cosa e ho scritto senza riflettere.. chiedo venia

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2010
    Messaggi
    77
    Grazie kb, si, apache funziona.
    In Mandriva il file di configurazione di apache è etc/httpd/httpd.conf e, almeno per le altre installazioni fatte finora, ha sempre funzionato a dovere.
    Nella cartella httpd sono presenti altre cartelle chiamate extramodules (contenente, fra gli altri, un file mod_php5.so), modules, modules.d (contenente fra gli altri il file 70_mod_php.conf) che è questo:
    Codice PHP:
    <IfDefine HAVE_PHP5>
        <
    IfModule !mod_php5.c>
        
    LoadModule php5_module    extramodules/mod_php5.so
        
    </IfModule>
    </
    IfDefine>

    <
    IfModule mod_mime.c>
        
    AddType application/x-httpd-php .php
        AddType application
    /x-httpd-php .phtml
        AddType application
    /x-httpd-php-source .phps
    </IfModule>

    <
    IfModule mod_php5.c>
        <
    IfModule mod_dir.c>
        
    DirectoryIndex index.php index.phtml
        
    </IfModule>
    </
    IfModule
    Nel file di configurazione di apache è presente la direttiva
    Include modules.d/*.conf
    quindi a mio avviso il modulo viene caricato.

    Ho provato a rinominare nella DocumentRoot il file index.html in index.php, ma in questo modo non visualizza nulla (pagina vuota).
    Ho provato ad aggiungere anche index.php in httpd.conf alla riga seguente, ma non cambia nulla:
    Codice PHP:
    <IfModule mod_dir.c>    
      
    DirectoryIndex index.html index.html.var index.cgi index.pl index.htm Default.htm default.htm index.xml index.php
    </IfModule
    Evidentemente c'è qualcosa che non va con il php, ma non saprei dove guardare ...

    Ogni suggerimento è ben accetto.
    Grazie.

  6. #6
    Utente di HTML.it L'avatar di las
    Registrato dal
    Apr 2002
    Messaggi
    1,221
    Originariamente inviato da MaxSimon
    Ho provato a rinominare nella DocumentRoot il file index.html in index.php, ma in questo modo non visualizza nulla (pagina vuota).
    il fatto che visualizzi pagina vuota è normale, se non hai cambiato il contenuto del file ma solo l'estensione andrà in Parse Error e se non hai display_errors abitlitato vedi appunto una pagina vuota.
    io credo che PHP stia funionando.
    prova a fare così:

    in httpd.conf metti i file .php come primi:

    codice:
      DirectoryIndex index.php index.html index.html.var index.cgi index.pl index.htm Default.htm default.htm index.xml
    in /etc/php.ini cerca display_errors e inpostalo su On

    codice:
    display_errors = On
    poi metti nella DocumentRoot (non so il percorso su Mandriva, ma lo trovi su httpd.conf) un file index.php con

    Codice PHP:
    <?PHP phpinfo(); ?>
    a questo punto vai nel browser e digiti pria solo http://localhost e se non funziona prova con http://localhost/index.php e vediamo che succede.

    Il calcolatore è straordinariamente veloce, accurato e stupido.
    L'uomo è incredibilmente lento, impreciso e creativo.
    L'insieme dei due costituisce una forza incalcolabile.
    (Albert Einstein)

  7. #7
    Utente di HTML.it
    Registrato dal
    Jun 2010
    Messaggi
    77
    Grazie Ias, funziona!!
    Con localhost sul browser mi apre il file index.php e esegue correttamente la funzione phpinfo(); se però cerco di aprire una pagina con estensione .html gli script php al suo interno non vengono riconosciuti: è normale?
    Devo installare in locale diversi siti, alcuni fatti con Drupal e altri in html che contengono nello stesso file .html script php: come posso fare?

    Grazie.

  8. #8
    Utente di HTML.it L'avatar di las
    Registrato dal
    Apr 2002
    Messaggi
    1,221
    si è normale, Apache quando riceve una chiamata per una pagina html la invia così come è al browser, mentre se riceve una richiesta per un file .php lo fa interpretare prima da php e poi invia l'output al browser.

    Puoi modificare questo comportamento aggiungendo

    AddType application/x-httpd-php .html .htm

    nel httpd.conf, però è un metodo che, a mio parere, non è molto cosigliabile, la cosa migliore sarebbe che gli script php venissero messi solo in file .php e non in .html

    Il calcolatore è straordinariamente veloce, accurato e stupido.
    L'uomo è incredibilmente lento, impreciso e creativo.
    L'insieme dei due costituisce una forza incalcolabile.
    (Albert Einstein)

  9. #9
    Utente di HTML.it
    Registrato dal
    Jun 2010
    Messaggi
    77

    [Risolto]

    Grazie Ias, ho modificato il file index.php eliminando una riga che mandava in Parse error:
    <?xml version="1.0" encoding="UTF-8"?>
    In questo modo il file index.php può contenere sia html che php e funziona bene.

    Grazie per l'aiuto.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.