IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[Sécurité] acces a un alias


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 22
    Points : 15
    Points
    15
    Par défaut [Sécurité] acces a un alias
    Bonjour tout le monde,

    Voila j'ai un script :
    /var/www/test/test.php
    dans ce fichier je fais appel a un alias referencé dans httpd.conf
    /toto/ /usr/share/toto/
    test.php :
    ................
    require_once ("../toto/connect.inc"));
    .....

    malheureusement ca me met une fatal erreur :"Failed opening '../toto/connect.inc' (include_path='./usr/share/pear') "

    ca veut dire koi?

  2. #2
    Membre chevronné
    Avatar de ska_root
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2005
    Messages
    1 203
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Service public

    Informations forums :
    Inscription : Août 2005
    Messages : 1 203
    Points : 1 839
    Points
    1 839
    Par défaut
    essaies ça ;
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    require_once ("/toto/connect.inc"));

  3. #3
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    Les alias ce n'est pas que pour les requetes http ? Ca n'influe pas sur le require_once normalement !
    il faut soit modifier le include_path pour php soit faire un require_once du chemin complet.

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 22
    Points : 15
    Points
    15
    Par défaut
    alors quand je fais :
    require_once ("/toto/connect.inc");
    ou
    require_once ("/usr/share/toto/connect.inc");

    ca ne marche pas non plus...
    j'ai en plus un warning me mettant :
    open_basedir restriction in effect. File is in wrong directory...

    le include_path se gere dans le php.ini je suppose...?

  5. #5
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    Oui dans php.ini
    tu peux le modifier à la volée grace à ini_set

  6. #6
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    Si tu fais dans ta console :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ls -l /usr/share/toto/connect.inc
    ca marche ?

  7. #7
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    Il faut que tu fasses le deuxioeme require et que tu regarde ton open_basedir (dixit l'erreur)
    http://us3.php.net/features.safe-mode#ini.open-basedir

    En gros tu n'as pas le droit d'inclure des trucs de /usr/share/... je dirais.

  8. #8
    Membre chevronné
    Avatar de ska_root
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2005
    Messages
    1 203
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Service public

    Informations forums :
    Inscription : Août 2005
    Messages : 1 203
    Points : 1 839
    Points
    1 839
    Par défaut
    Citation Envoyé par Mr N.
    Les alias ce n'est pas que pour les requetes http ? Ca n'influe pas sur le require_once normalement !
    il faut soit modifier le include_path pour php soit faire un require_once du chemin complet.
    au temps pour moi, cela ne fonctionne pas en effet avec un alias, il faut donc mettre le chemin complet ou le relatif

    par contre, as-tu essayer de créer un alias dans un autre répertoire que le repertoire web ? je sais que sur les distrib récentes ( notamment fedora ) selinux empêche les alias autres que dans le repertoire web
    quoiqu'il en soit, il s'agit bien d'un problème d'accés au répertoire /usr/share/toto...

  9. #9
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    Je suis sous Fedora Core 3 et j'ai des alias ou je veux (enfin autre-part que www)

  10. #10
    Membre chevronné
    Avatar de ska_root
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2005
    Messages
    1 203
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Service public

    Informations forums :
    Inscription : Août 2005
    Messages : 1 203
    Points : 1 839
    Points
    1 839
    Par défaut
    Citation Envoyé par Mr N.
    Je suis sous Fedora Core 3 et j'ai des alias ou je veux (enfin autre-part que www)
    ah bon ? peut-être que la politique selinux à été ajouté dans le core4 à vérifier... moi en tout cas j'ai eu le problème.
    et je l'ai résolu avec ceci : http://piapplications.free.fr/linux/JMP-LNX-0006.html

  11. #11
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 22
    Points : 15
    Points
    15
    Par défaut
    je suis sous debian woody pour ceux que ca interrese...
    j'ai modifié le open_basedir du httpd.conf et effectivement ca marche nettement mieux maintenant....
    maintenant j'aimerais modifié uniquement pour ce script donc effectivement j'ai essayé ini_set()avec les parametre ki vont bien
    mais j'ai une erreur : CALL TO UNDEFINED FUNCTION !

    la doc sur ini_set me dit :
    open_basedir NULL PHP_INI_SYSTEM

    PHP_INI_SYSTEM : La valeur peut etre modifié dans php.ini ou httpd.conf.

    cela implike t il que le changé de le script c nada?

    en tout cas merci pour votre réactivité !!

  12. #12
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 22
    Points : 15
    Points
    15
    Par défaut
    a mon avis je peux pas le modifier dans un script php...
    est il possible de le modifié par ligne de commande directement?

  13. #13
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    open_basedir c'est dans httpd.conf ?

  14. #14
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 22
    Points : 15
    Points
    15
    Par défaut
    oui
    /etc/apache/httpd.conf

    php_admin_value open_dir .................

  15. #15
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    Et c'est genant si tu le modifies directement dans httpd.conf ?

  16. #16
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 22
    Points : 15
    Points
    15
    Par défaut
    Disons que ca devra être deployer ensuite sur un grand nombre de serveur donc l'automatisation est plus que conseillée ..

Discussions similaires

  1. Serveur local : accès interdit à un alias
    Par mitou76 dans le forum Apache
    Réponses: 1
    Dernier message: 21/03/2013, 22h48
  2. Une erreur 233 de ms sql server
    Par Hokage dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 05/10/2009, 18h40
  3. Réponses: 2
    Dernier message: 05/10/2004, 23h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo