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 :

URL Rewritting rebond


Sujet :

Apache

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Responsable de service informatique
    Inscrit en
    Mars 2009
    Messages
    113
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Responsable de service informatique
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2009
    Messages : 113
    Par défaut URL Rewritting rebond
    Bonjour,

    j'ai une question simple qui a du être évoquée j'en suis sûr, mais pas moyens de trouver (ça fait une heure que je cherche) en des termes simples.
    Désolé donc si c'est redondant.

    J'ai un fichier .htaccess à la racine de mon serveur et j'ai plusieurs répertoires qui correspondent aux différentes versions du site.
    La dernière version en date étant la 5, j'ai écrit ceci.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Options +FollowSymlinks 
    RewriteEngine on
    RewriteRule ^(.*) /CMP_SITE5/
    RewriteRule ^\.html$ /CMP_SITE5/index.php?id=$1 [L]
    A ola racine de mon CMP_SITE5, j'ai un autre htaccess;
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Options +FollowSymlinks 
    RewriteEngine on
    RewriteRule (.*)\.HTML$ /CMP_SITE5/index.php?id=$1 
    RewriteRule (.*)\.html$ /CMP_SITE5/index.php?id=$1
    Ça pointe correctement vers le bon repertoire, sauf que je "perds" tous les liens avec mes pages css et scripts js.
    Dans mes fichiers index.php pourtant tout y est référencé tel que "./css/style.css" ou "./js/ckeditor.js".
    Par contre quand je référence mes js par liens direct "www.monsite.com/CMP_SITE5/js/ckeditor.js" ça fonctionne.
    Que se passe t il ?
    Que n'ai je pas compris ?

    POurquoi ma première redirection RewriteRule ^(.*) /CMP_SITE5/ ne suffit elle pas à faire en sorte que les références relatives "./" ne se font pas à partir du répertoire CMP_SITE5 ?

    Merci de m'aider, je galère un peu.

  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
    Par défaut
    Le problème n'est pas dans les redirections, il est dans l'URL que vois le navigateur pour les pages du site. Il prend cette URL pour construire les URL des images et CSS. Donc forcément, si les images sont dans un sous-répertoire qui n'est pas réécrit pour les images et les CSS, et que le navigateur ne voit pas ce répertoire dans l'URL de la page ou des images ou CSS, ça ne peut pas fonctionner.

    Donc 2 options : faire une redirection pour ajouter le sous-répertoire CMP_SITE5 partout (pas que pour les .html), soit faire comme tu as fait, à savoir ajouter ce sous-répertoire CMP_SITE5 dans les URL des images (src="/CMP_SITE5/js/ckeditor.js" est suffisant, pas la peine de répéter http://...).

  3. #3
    Membre confirmé
    Homme Profil pro
    Responsable de service informatique
    Inscrit en
    Mars 2009
    Messages
    113
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Responsable de service informatique
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2009
    Messages : 113
    Par défaut Merci pour cette réponse.
    Merci _Mac_ pour ta réponse.
    Si j'ai bien compris la première solution serait de rajouter des fichiers .htaccess partout ou la redirection est nécessaire, c'est bien ça ?
    Dans mon cas, j'ai une bonne demi douzaine de répertoires, et une 20 aines de liens (dois je faire pareil pour les include/require en php ?).
    En terme de "charge de travail" c'est à peu près la mm chose.
    Dans ce cas, qu'est-ce qui serait, à ton avis le plus pertinent ?

  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
    Par défaut
    Citation Envoyé par samgratt Voir le message
    Si j'ai bien compris la première solution serait de rajouter des fichiers .htaccess partout ou la redirection est nécessaire, c'est bien ça ?
    En fait, j'ai lu trop vite tes .htaccess. En particulier j'ai ignoré la ligne 3 du 1er .htaccess que tu as donné. En fait, c'est à cette règle que je pensais. Du coup, je ne comprends pas pourquoi ça ne marche pas. Tu peux donner un exemple d'URL bien redirigée mais qui n'affiche pas les images et les CSS ?

Discussions similaires

  1. [Débutant]infos ds session sans cookie ? url rewriting ?
    Par Satanas_et_diabolo dans le forum ASP
    Réponses: 8
    Dernier message: 10/10/2006, 17h13
  2. url rewriting
    Par olive.m dans le forum Apache
    Réponses: 3
    Dernier message: 17/06/2005, 02h01
  3. .htaccess - url rewriting, besoin de conseils
    Par giminik dans le forum Apache
    Réponses: 2
    Dernier message: 25/04/2005, 20h18
  4. Activer l'url rewriting
    Par Otaugames dans le forum Apache
    Réponses: 2
    Dernier message: 09/03/2005, 14h58
  5. Url Rewriting / htaccess
    Par bisi dans le forum Apache
    Réponses: 4
    Dernier message: 25/07/2004, 22h12

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