Impossible de lire les .php

yannix63 Messages postés 16 Statut Membre -  
 ThE_WoRsT -
Bonjour à tous, je suis newbie en linux,
je viens d'instaler un apache2 et un nagios pour faire un petit peu d'administration / monitoring. Jusque là tous va bien....

Je souhaiterai avoir une interface plus convivial au niveau de nagios et pour cela rajouter la couche OREON (www.oreon.org) j'ai installé comme demandé php4 / mysql. Au début ca avait l'air de fonctionner mais maintenant et je ne sais pas pourquoi je n'arrive plus à accéder au php. IE ou FIREFOX me demande d'enregistrer le fichier

Pourtant dans mon fichier /etc/apache2/apache2.conf
j'ai bien :
AddType application/x-httpd-php .php .php3 .phtml
AddType application/x-httpd-php-source .phps
DirectoryIndex index.php setup.php (......etc........)

j'ai créer un fichier phpinfo.php dans /var/www/ pour faire le test et ca marche pas
Je pense que je ne suis pas trés loin de la solution, il me manque simplement un avis plus expert que le miens et un petit coup de pouce

Amitié à tous le monde et merci d'avance pour l'aide que certains pourrons m'apporter !!!
Configuration: Debian

10 réponses

  1. samtrops Messages postés 55 Statut Membre 6
     
    Salut,
    J'ai rencontré le problème qui se trouve être assez récurrent. Il apparaît lorsque le DNS n'est pas installé.aut taper

    Sous debian il faut taper :
    # a2enmod php5
    #/etc/init.d/apache2 force-reload
    1
    1. ThE_WoRsT
       
      1°) Je ne vois pas le rapport entre apache qui n'interprète pas le PhP, ce qui est le problème ici, et l'installation d'un DNS... Sait tu au moins ce qu'est un DNS et à quoi il set?

      2°) Les commandes que tu donne servent à activer le module PhP5 d'apache, et n'ont absolument aucun rapport avec le service DNS... Malgré tout cette solution peut être utile puisque installer php ne suffit pas, il faut activer le module d'Apache pour que ce dernier le gère...
      0
  2. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
     
    Salut,

    affiche le résultat de la commande
    egrep 'DocumentRoot' /etc/apache2/apache2.conf 
    lami20j
    0
    1. yannix63 Messages postés 16 Statut Membre
       
      Bonjour merci pour votre aide,
      la commande ne donne aucun résultat !
      0
      1. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571 > yannix63 Messages postés 16 Statut Membre
         
        Re,

        affiche plutôt ce que tu as tapé pour voir pourquoi il n'y a pas de résultat.

        Merci.

        lami20j
        0
  3. yannix63 Messages postés 16 Statut Membre
     
    debian:/# egrep 'DocumentRoot' /etc/apache2/apache2.conf
    debian:/#
    0
  4. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
     
    En ce cas ouvre le fichier et cherche une ligne qui contient cette directive DocumentRoot

    Ca m'etonnerait qu'elle n'existe pas.

    Affiche entre temps le résultat de

    egrep -i 'root' /etc/apache2/apache2.conf

    C'est bien celui là le fichier de configuration de ton apache ?

    /etc/apache2/apache2.conf

    lami20j
    0
    1. yannix63 Messages postés 16 Statut Membre
       
      oui oui c'est bien celui la

      debian:/# egrep -i 'root' /etc/apache2/apache2.conf
      # ServerRoot: The top of the directory tree under which the server's
      ServerRoot "/etc/apache2"
      #UserDir disabled root
      debian:/#


      J'ai pas de directive DocumentRoot dans mon apache2.conf
      par contre j'en ai une (et je ne sais pas si ca a un rapport) dans
      /etc/apache2/site-enabled/000-default
      0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
     
    Re,

    J'ai pas de directive DocumentRoot dans mon apache2.conf

    Ben c'est la directive qu'il te faut. C'est le répertoire qui contient le site.
    http://httpd.apache.org/docs/1.3/mod/core.html#documentroot

    Quand tu fait http://localhost/index.php en fait le navigatuer va ouvrir /le/repertoire/documentroot/index.php
    lami20j
    0
  7. yannix63 Messages postés 16 Statut Membre
     
    en tous cas j'ai plus d'idee
    car apache à l'air de fonctionner correctement
    je vois les pages html mais pas les php
    le apache2.conf à l'air correct d'apres les différent forums
    cad ya les élément qui permettrai de prendre en charge les php
    Aurais-je oublier un paquet ???
    0
    1. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
       
      Ben met alors les pages .php où tu as les pages .html pour voir

      lami20j
      0
      1. yannix63 Messages postés 16 Statut Membre > lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention  
         
        c'est déja défini comme ca
        0
  8. buzz17 Messages postés 252 Statut Membre 33
     
    j'ai eu ça une fois... un reboot de la station resolu le probleme.
    0
    1. yannix63 Messages postés 16 Statut Membre
       
      ouai dséja essayé et pas qu'une fois
      dur dur comme problème
      et j'ai vraiment pas envie de forpmater aprés 20 heure de travail sur la bécane
      Merci
      0
  9. yannix63 Messages postés 16 Statut Membre
     
    Je pense pas que le problème vienne de là car quand je tape
    http://localhost/
    je tombe bien sur

    http://localhost/apache2-default/

    donc le rerpertoire est bien défini correctement non ?

    et d'ailleur le fichier html se trouve dans /var/www/apache2-default
    et s'appelle index.html
    mais lorsque je le modifie (ou en rajoute un) avec l'extension php l'explorateur me demande d'enregistrer le fichier au lieu de le visualiser.

    Faut-il que je rajoute la directive DocumentRoot dans le apache2.conf ?
    Quelle différence avec celui définie dans /etc/apache2/sites-enabled/000-default ?

    Merci pour vos réponses !!!
    0
  10. yannix63 Messages postés 16 Statut Membre
     
    Eh ben !!! Je ne pensais pas que ce petit problème pouvait arréter les plus chevronnés membre CCM linuxien

    Je remonterai le post en début de semaine prochaine si pas de résultat avant, bon weekend à tous
    0
    1. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
       
      Salut,

      je vais te préparer un peu plus tard un fichier minimal de configutation pour apache et aussi la commande de démarrage pour pouvouir tester.

      je vais peut être te demander encore des choses mais pour l'instant comme je ne suis pas sous linux je ne veux pas faire des erreurs.

      Pour l'instant affiche ici ton fichier de configuration d'apache ainsi que le résultat de la commande
      ps aux | grep -i 'apache|http'
      lami20j
      0
  11. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
     
    Salut,

    DirectoryIndex index.php setup.php (......etc........)

    j'ai créer un fichier phpinfo.php dans /var/www/ pour faire le test et ca marche pas


    Et si tu ajoutes dans la directive DirectoryIndex aussi phpinfo.php ça marche pas non plus?!

    -------------------------------------------------------------------

    affiche /etc/init.d/httpd -V pour voir

    -------------------------------------------------------------------

    Construction d'un site test.


    Remplace httpd avec le nom de ton fichir (ça peut être apachectl,...)

    Et voilà comment tu peux tester avec un fichier de configuration minimal

    En général un site web contient au moins 3 répertoires :

    conf - contient le fichier de configuration, en général httpd.conf

    htdocs - contient les documents, les images, etc. qu'on veut mettre à dispostion des clients

    logs - les fichers journal

    On peut aussi avoir le répertoire cgi-bin - contient les scritps CGI

    A remplacer cette partie LoadModule php5_module modules/libphp5.so avec ton module, il me semble que pour toi tu doit écrire LoadModule php4_module modules/libphp4.so

    Ce que tu vois souligné il faut remplacer selon ta configuration (donc cherche l'emplacement de fichier mime.types et de répertoire modules sur ton OS)

    Les commandes (ce que tu vois en gras sont sur une seule ligne).
    Tu peux bien sûr utiliser un editeur de texte pour créer le fichier httpd.conf.
    J'ai utilisé des commandes pour rendre les chose plus facile si jamais tu ne sais pas utilser un editeur de texte.
    A la fin de message je vais afficher le contenu de httpd obtenu avec la suite de commandes echo

    En root</souligne>
    debian:~# groupadd webgroup
    debian:~# useradd -g 'webgroup' -s /bin/false webuser
    

    En user (j’ai utilisé yannix63)
    ~$ mkdir -p /home/$USER/site.yannix/{conf,htdocs,logs}
    ~$ cd site.yannix/
    ~/site.yannix$ cp -vR /usr/local/httpd/modules/ .
    `/usr/local/httpd/modules/' -> `./modules'
    `/usr/local/httpd/modules/httpd.exp' -> `./modules/httpd.exp'
    `/usr/local/httpd/modules/libphp5.so' -> `./modules/libphp5.so'
    ~/site.yannix$ cat /usr/local/httpd/conf/mime.types  > conf/mime.types
    ~/site.yannix$ echo -e 'Listen 80\nUser webuser\nGroup webgroup' > conf/httpd.conf
    ~/site.yannix$ echo -e "\nServerName localhost\nDocumentRoot /home/$USER/site.yannix/htdocs" >> conf/httpd.conf
    ~/site.yannix$ echo -e '\nTransferLog logs/access_log\nErrorLog logs/error_log' >> conf/httpd.conf
    ~/site.yannix$ echo -e '\nPidFile logs/httpd.pid\nTypesConfig conf/mime.types'>> conf/httpd.conf
    ~/site.yannix$ echo -e '\nLoadModule php5_module        modules/libphp5.so'>> conf/httpd.conf
    ~/site.yannix$ echo -e '\nDirectoryIndex index.html index.php'>> conf/httpd.conf
    ~/site.yannix$ echo -e '\nAddType application/x-httpd-php .php'>> conf/httpd.conf
    ~/site.yannix$ echo -e "<?php\nphpinfo();\n?>" > htdocs/index.php
    


    En root

    ~# killall httpd
    ~# cd /home/yannix63/site.yannix/
    /home/yannix63/site.yannix# /etc/init.d/httpd -f conf/httpd.conf -d $(pwd)
    /home/yannix63/site.yannix# ps aux | grep httpd
    yannix63   5698  0.0  1.0  4432 2628 pts/2    S+   14:29   0:00 /usr/bin/vim ccm_httpd
    root      5715 16.0  3.0 14296 7828 ?        Ss   14:34   0:00 /usr/local/httpd/bin/httpd -f conf/httpd.conf -d /home/yannix63/site.yannix
    webuser   5716  0.0  2.7 14296 7084 ?        S    14:34   0:00 /usr/local/httpd/bin/httpd -f conf/httpd.conf -d /home/yannix63/site.yannix
    webuser   5717  0.0  2.7 14296 7084 ?        S    14:34   0:00 /usr/local/httpd/bin/httpd -f conf/httpd.conf -d /home/yannix63/site.yannix
    webuser   5718  0.0  2.7 14296 7084 ?        S    14:34   0:00 /usr/local/httpd/bin/httpd -f conf/httpd.conf -d /home/yannix63/site.yannix
    webuser   5719  0.0  2.7 14296 7084 ?        S    14:34   0:00 /usr/local/httpd/bin/httpd -f conf/httpd.conf -d /home/yannix63/site.yannix
    webuser   5720  0.0  2.7 14296 7084 ?        S    14:34   0:00 /usr/local/httpd/bin/httpd -f conf/httpd.conf -d /home/yannix63/site.yannix
    root      5722  0.0  0.2  2148  768 pts/1    R+   14:34   0:00 grep httpd
    debian:/home/yannix63/site.yannix#
    

    En user
    ~/site.yannix$ firefox http://localhost&

    Le fichier httpd.conf créer avec la suite de commandes echo :
    ~/site.yannix$ cat conf/httpd.conf
    Listen 80
    User webuser
    Group webgroup
    
    ServerName localhost
    DocumentRoot /home/lami20j/site.yannix/htdocs
    
    TransferLog logs/access_log
    ErrorLog logs/error_log
    
    PidFile logs/httpd.pid
    TypesConfig conf/mime.types
    
    LoadModule php5_module        modules/libphp5.so
    
    DirectoryIndex index.html index.php
    
    AddType application/x-httpd-php .php 


    lami20j

    P.S. C'est un site minimal. Je trouve une bonne politique de commencer la configuration de début pas à pas et de ne pas utiliser le fichier de configuration par défaut d'apache.
    A savoir qu'il y a des options en ligne de commande très utiles.

    A toi de voir.
    0