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

Apache Discussion :

Problème d'accés aux éléments de mon sous domaine


Sujet :

Apache

  1. #1
    Membre à l'essai
    Inscrit en
    Mars 2007
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 14
    Points : 10
    Points
    10
    Par défaut Problème d'accés aux éléments de mon sous domaine
    Bonjour tout le monde,

    J'ai créé un sous domaine de mon site avec la balise <VirtualHost> sous apache dans le fichier httpdcofig.
    Lorsque j'accède à ce sous domaine,les images et les fichiers inclus dans le site(sous domaine) ne sont pas affichés parce que je l'ai apporté avec ses chemins relatifs.
    Par contre si je les donne des chemins absolus, ils sont affichés.

    Est ce qu'il y a une solution pour faire afficher ces données avec des chemins relatifs dans le sous-domaine?

    La configuartion que j'utilise est php4.3.10, apache 1.3.33et mysql 4.1.9.


    Merci d'avance.

  2. #2
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Points : 12 977
    Points
    12 977
    Par défaut
    Logiquement, ça ne devrait pas poser de problème. Peux-tu nous donner ta configuration de virtual host et un code complet de page HTML contenant ces images ?

    Du détail, du détail, du détail !!!
    Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute

  3. #3
    Membre à l'essai
    Inscrit en
    Mars 2007
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 14
    Points : 10
    Points
    10
    Par défaut
    Bonjour Tout le monde,

    Merci _Mac_ pour votre réponse. Voila ce que vous avez demandé.

    Merci d'avance pour tout qui répondent.

    Code HTML inclus dans une variable php:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    $out ='<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
    <HTML lang="fr_FR">
    <HEAD>
    <title>'.$title.'</title>
    '.$meta_content_type.
    $meta_index.'
    <LINK rev=made REL="SHORTCUT ICON" HREF="../souwar/favicon.ico">
    <LINK href="../styles/pages.css" rel="stylesheet" type="text/css">
    </head>
    <body background="../souwar/backall.JPG" link="#008000"><center>
    <script src="http://www.google-analytics.com/urchin.js" type="text/javascript">
    </script>
    <script type="text/javascript">
    _uacct = "UA-1106705-1";
    urchinTracker();
    </script>
    <script src="../progressbar.js" type="text/javascript" language="javascript1.2"></script>
    <script src="../maktaba/functions.js" type="text/javascript" language="javascript1.2"></script>
    '.$jsFunction.$topPages.'
      <tr> 
        <td height="29" colspan="4" valign="top" width="662"><table  width="100%" border="0" class="menu">
            '.$topMenu.'
            <tr> 
              <td height="1"></td>
              <td></td>
              <td></td>
              <td></td>
              <td></td>
            </tr>
            <tr> 
              <td height="2"></td>
              <td></td>
              <td></td>
              <td></td>
              <td></td>
              <td ></td>
            </tr>
          </table></td>
      </tr>
      <tr> 
        <td width="132" rowspan="2" valign="top" class="pub">
    	<IFRAME name="2" title="zone2" Marginwidth="0" Marginheight="0" height="164" width="120" frameborder=0 scrolling="no" SRC="../ishhar.php?zone=2"></IFRAME> 
        </td>'.
        $middle_zone.
        $right_zone.'
     
     
    </table>
    '.$bottomMenu.'</center>
    </body>
    </html>';

    Configuration de VirtualHost:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    NameVirtualHost *:80
     
      <VirtualHost *:80>
         ServerName phl.net 
         ServerAlias <a href="http://www.phl.net" target="_blank">www.phl.net</a>      // cette adresse est sur le local
         DocumentRoot "${path}/www/phl"
     
      </VirtualHost>
     
      <VirtualHost *:80>
     
          ServerName phl.net 
          ServerAlias phl.net *.phl.net
          UseCanonicalName Off
          VirtualDocumentRoot "${path}/www/phl/%1"
     
      </VirtualHost>

  4. #4
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Points : 12 977
    Points
    12 977
    Par défaut
    C'est avec quel sous-domaine que le problème survient ?

    A priori, je dirais que c'est un conflit entre les virtual hosts : la directive ServerName est la même pour les 2 VH, sans compter le fait que www.phl.net matche pour les 2 VH. Il faut essayer avec un truc comme ça qui spécifie un document root pour www.phl.net et un autre pour tous les autres sous-domaines :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    NameVirtualHost *:80
     
      <VirtualHost *:80>
         ServerName www.phl.net 
         DocumentRoot "${path}/www/phl"
      </VirtualHost>
     
      <VirtualHost *:80>
          ServerName phl.net 
          ServerAlias phl.net *.phl.net
          UseCanonicalName Off
          VirtualDocumentRoot "${path}/www/phl/%1"
      </VirtualHost>
    Y a juste un truc que je trouve étrange dans le VirtualDocumentRoot : le document root d'un sous-domaine autre que www est accessible à partir de www. Par exemple, le document root de toto.phl.net est également accessible depuis www.phl.net/toto.

    Du détail, du détail, du détail !!!
    Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute

  5. #5
    Membre à l'essai
    Inscrit en
    Mars 2007
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 14
    Points : 10
    Points
    10
    Par défaut
    Bonjour tout le monde,

    Merci _mac_ pour votre réponse.

    En fait, le sous-domaine que je l'utilse est appelé "charite.phl.net" et le domaine est "www.phl.net".
    Alors le problème se produit au niveau du sous-domaine "charite.phl.net".
    Le problème est que toutes les images et tout les fichiers qui ont un chemin relatif, ils ne sont pas affichés dans ce dernier.

    Alors q'au niveau du domaine "www.phl.net", ces images et fichiers sont affichés avec ses chemins relatifs.

    De ma part je vois qu'avec le <virtualHost> au niveau du sous-domaine , il prend le répertoire du sous-domaine(charite) comme un répertoire parent et non pas "phl".

    Merci pour vos réponse

  6. #6
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Points : 12 977
    Points
    12 977
    Par défaut
    Oui, c'est ça. Pour charite.phl.net, le document root est "${path}/www/phl/charite". Donc les images doivent se trouver qq part dans cette arborescence ("${path}/www/phl/charite/images", "${path}/www/phl/charite/souwar", etc.). En passant par charite.phl.net, il n'est donc pas possible d'accéder à des images se trouvant ailleurs quand la (sous-)arborescence de "${path}/www/phl/charite".

    Donc, s'il s'agit de faire référence à des images se trouvant par exemple dans "${path}/www/phl/souwar", il faut effectivement soit forcer le chemin des images en absolue en passant par www.phl.net car ce nom pointe sur "${path}/www/phl" et donc le sous-répertoire souwar est accessible par ce biais, soit "créer" le sous-répertoire souwar dans "${path}/www/phl/charite". Je mets créer entre ", car un lien symbolique poitant sur "${path}/www/phl/souwar" peut faire l'affairemais ça ne marche que sous Unix.

    Du détail, du détail, du détail !!!
    Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute

Discussions similaires

  1. Accès au contenue d'un sous-domaine
    Par QuentinMelt dans le forum Serveurs (Apache, IIS,...)
    Réponses: 1
    Dernier message: 13/06/2015, 17h53
  2. [Grid] accès aux éléments sous jascents
    Par ikeas dans le forum Windows Presentation Foundation
    Réponses: 2
    Dernier message: 02/12/2014, 08h10
  3. Problème d'accès aux ressources après export de mon application
    Par stevenfoox dans le forum Débuter avec Java
    Réponses: 2
    Dernier message: 05/09/2014, 13h23
  4. Accès aux base de données sous Delphi 7 Edition Studio Perso
    Par renorx dans le forum Bases de données
    Réponses: 4
    Dernier message: 16/02/2005, 14h24
  5. [TOMCAT] JSP problème d'accès aux méthodes d'une classes
    Par gunnm dans le forum Tomcat et TomEE
    Réponses: 3
    Dernier message: 22/05/2004, 14h02

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