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 :

Réécriture d'url un classique


Sujet :

Apache

  1. #1
    Membre habitué Avatar de gadj0dil0
    Profil pro
    Support technique
    Inscrit en
    Février 2007
    Messages
    133
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Support technique

    Informations forums :
    Inscription : Février 2007
    Messages : 133
    Points : 130
    Points
    130
    Par défaut Réécriture d'url un classique
    Bonsoir,

    Des heures à tester ce que j'ai pu trouver à droite à gauche sans succès.
    Une demande très simple à la base, remplacer /index.php?title=une_page par /une_page

    J'ai essayé
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    RewriteCond %{REQUEST_URI}  ^/index.php$ 
    RewriteCond %{QUERY_STRING} ^title=(.*) 
    RewriteRule ^(.*)$ /%1 [R=301]
    Ca me donne /une_page?title=une_page. "LOL". Biensûr cette page n'existe pas mais c'est bien ma redirection 404 'ErrorDocument 404 /?title=erreur404) qui s'affiche avec /une_page?title=une_page dans la barre d'adresse.


    J'ai essayé
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    RewriteCond %{REQUEST_URI}  ^/index.php$ 
    RewriteCond %{QUERY_STRING} ^title=(.*) 
    RewriteRule ^(.*)$ / [R=301]
    C'est plus joli : /?title=une_page

    Avec ca j'ai bricolé dans tous les sens, rien à faire, ça marche pô, impossible de transformer l'adresse en /une_page.

    Mont but n'est pas de pouvoir écrire /une_page pour qu'elle s'affiche (une simple condition suffit) je souhaite que les adresses des liens se modifient dans la barre d'adresse, par pure esthétique. Des conditions sont donc nécessaires.
    Je précise que le site est sur la base du CMS MediaWiki.


    Merci pour votre aide.

  2. #2
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 235
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 235
    Points : 15 532
    Points
    15 532
    Par défaut
    la réécriture d'url sert à faire l'inverse, c'est à dire que le navigateur demande "serveur/ma_page" et la réécriture fait une redirection invisible vers "serveur/index.php?titre=ma_page".
    une fois que cette redirection fonctionne c'est dans l'application que vous devez modifier les urls pour qu'ils utilisent ce nouveau format.

  3. #3
    Membre habitué Avatar de gadj0dil0
    Profil pro
    Support technique
    Inscrit en
    Février 2007
    Messages
    133
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Support technique

    Informations forums :
    Inscription : Février 2007
    Messages : 133
    Points : 130
    Points
    130
    Par défaut
    Citation Envoyé par mathieu Voir le message
    la réécriture d'url sert à faire l'inverse, c'est à dire que le navigateur demande "serveur/ma_page" et la réécriture fait une redirection invisible vers "serveur/index.php?titre=ma_page".
    une fois que cette redirection fonctionne c'est dans l'application que vous devez modifier les urls pour qu'ils utilisent ce nouveau format.
    Merci de ta réponse, dans mon exemple on voit bien que ca fonctionne la RERECRITURE puisqu'en passant la souris au dessus des liens j'ai bien index.php?title=une_page et une fois appelée s'affiche dans la barre d'adresse sans index.php soit ?title=une_page

    Peut-être essayer avec les fonctions PHP?

  4. #4
    Membre habitué Avatar de gadj0dil0
    Profil pro
    Support technique
    Inscrit en
    Février 2007
    Messages
    133
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Support technique

    Informations forums :
    Inscription : Février 2007
    Messages : 133
    Points : 130
    Points
    130
    Par défaut
    Effectivement j'ai du modifier le code PHP du MediaWiki

    Jamais je n'aurais trouvé sans que cette outil en ligne magique pour Mediawiki qui a écrit le code pour moi !
    https://shorturls.redwerks.org

    /.LocalSettings
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $wgScriptPath = "";
    $wgArticlePath = "/$1";
    $wgUsePathInfo = true;
    $wgGenerateThumbnailOnParse = false;
    /.htacces
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-f
    RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-d
    RewriteRule ^(.*)$ %{DOCUMENT_ROOT}/index.php [L]
     
    RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-f
    RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-d
    RewriteRule ^/?images/thumb/([^/]+)/([0-9]+)px-.*$ %{DOCUMENT_ROOT}/thumb.php?f=$1&width=$2 [L,QSA,B]
     
    RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-f
    RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-d
    RewriteRule ^/?images/thumb/archive/([^/]+)/([0-9]+)px-.*$ %{DOCUMENT_ROOT}/thumb.php?f=$1&width=$2&archived=1 [L,QSA,B]

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réécriture d'url dans fichier ASP
    Par Ishizaki dans le forum ASP
    Réponses: 1
    Dernier message: 22/02/2007, 11h44
  2. ASP + Access, réécriture d'URL
    Par duchesnef dans le forum ASP
    Réponses: 5
    Dernier message: 14/09/2006, 09h54
  3. La réécriture d'URL avec Apache
    Par agencep dans le forum Langage
    Réponses: 3
    Dernier message: 25/04/2006, 16h37
  4. Réécriture d'url en asp.
    Par éelise dans le forum ASP
    Réponses: 4
    Dernier message: 13/12/2005, 08h53

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