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 :

Redirection via htaccess d'URL spéciales


Sujet :

Apache

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

    Informations forums :
    Inscription : Janvier 2004
    Messages : 46
    Points : 20
    Points
    20
    Par défaut Redirection via htaccess d'URL spéciales
    Bonjour à tous (et à toutes bien sûr)
    okay, mon titre n'est pas très clair et j'en suis désolé : j'ai pas réussi à exprimer mon problème en si peu de mots.

    Je ne sais pour quelle raison mais en allant dans les outils pour Webmestres de Google je me suis aperçu qu'il y avait dans son index 2 URL différentes pour la même page.

    Ainsi j'ai "mapage" qui est la page et son URL qui est :
    -http://www.monsite.fr/mapage
    et dans Google je trouve aussi :
    -http://www.monsite.fr/mapage/

    Bon, je vais nettoyer chez Google ces URL en double mais je voudrais que ça ne se reproduise plus.

    Est-il possible via l'URL Rewriting faire en sorte que les URL se terminant par / soit ré-écrite pour qu'il y ait plus de slash à la fin ?

    Merci beaucoup pour vos réponses qui me seront précieuses.
    Bonne journée,
    Philippe

  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
    Oui, ça doit être faisable :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    RewriteEngine on
    RewriteCond %{REQUEST_URI} /$
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)/$ $1 [R=301,L]
    A TESTER !!!!

    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
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 46
    Points : 20
    Points
    20
    Par défaut
    Citation Envoyé par _Mac_ Voir le message
    Oui, ça doit être faisable :
    [CODE]
    A TESTER !!!!
    Testé, mais pas mieux. Toujours ce maudit /. :-(
    Bonne journée,
    Philippe

  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
    Quand tu dis que "'mapage' est la page", tu veux dire qu'il existe un fichier mapage ou plutôt que mapage est un répertoire est que tu veux afficher la page par défaut index.xxx quand on accède à http://.../mapage de la même manière que http://.../mapage/ (fonctionnement logique) ?

    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
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 46
    Points : 20
    Points
    20
    Par défaut
    Hello Mr Mac
    oui bien sûr le fonctionnement serait logique s'il s'agissait d'un répertoire, mais,
    mapage est une page et non un dossier avec avec son index.

    Mapage pourrait aussi bien s'écrire :
    -http://www.monsite.fr/mapage.htm
    Bonne journée,
    Philippe

  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
    Il manque l'extension ? Je veux dire, il y a un fichier mapage.htm que tu veux accéder par l'URL /mapage ou bien le fichier s'appelle réellement mapage (sans extension) ?

    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

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

    Informations forums :
    Inscription : Janvier 2004
    Messages : 46
    Points : 20
    Points
    20
    Par défaut
    il n'y a pas d'extension du tout.
    Ma page c'est -http/www.monsite.fr/mapage
    Bonne journée,
    Philippe

  8. #8
    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 quoi comme serveur Web ? C'est super bizarre car si je crées un fichier "toto" sur mon EasyPHP et que je l'appelle par http://localhost/toto, il s'affiche alors que http://localhost/toto/ me donne une erreur 404. Tu es vraiment sûr qu'on parle de fichiers et pas plutôt de répertoires ?

    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

  9. #9
    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 un CMS, ton truc, non ? Il n'existe pas vraiment de fichier mapage sur le disque dur ? C'est ça que je voudrais que tu confirmes : ça me permettrait de tester.

    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

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

    Informations forums :
    Inscription : Janvier 2004
    Messages : 46
    Points : 20
    Points
    20
    Par défaut
    Citation Envoyé par _Mac_ Voir le message
    C'est un CMS, ton truc, non ? Il n'existe pas vraiment de fichier mapage sur le disque dur ? C'est ça que je voudrais que tu confirmes : ça me permettrait de tester.
    Ouaip, c'est un CMS de bidouilleurs.
    Il n'y aucune page statique : comme un CMS elles sont créées à la volée : Les données proviennent de MySQL et c'est PHP l'interpréteur.
    Comme dab quoi...

    L'URL où se trouve le bouzin c'est celle du WWW dans ma signature....
    Bonne journée,
    Philippe

  11. #11
    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 à cause de ça que ça marche pas comme tu veux : Apache n'est pas en mesure de savoir que l'URL sans / n'a pas de sens car il ne peut pas vérifier que c'est un "fichier".

    J'imagine qu'il y a d'autres règles dans le .htaccess de ta racine pour rediriger les requêtes sur ton CMS : tu peux nous les donner ? Faut les adapter pour trouver une solution.

    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

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

    Informations forums :
    Inscription : Janvier 2004
    Messages : 46
    Points : 20
    Points
    20
    Par défaut
    Oh ! Tu me la coupes Mac !
    Je n'avais vraiment pas pensé à cela. Faut dire que je n'y connais pas grand chose en Apache : forcément que mes ruses de Sioux ne pouvaient pas marcher.
    Et ouala le .htaccess :
    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
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    <IfModule mod_php4.c>
        php_value session.use_trans_sid 0
    </IfModule>
    <IfModule mod_security.c>
    SecFilterEngine Off
    SecFilterScanPOST Off
    </IfModule>
    RewriteEngine On
    #
    RewriteBase /
    RewriteCond %{REQUEST_FILENAME} -f
    RewriteRule ^(.*) $1 [L]
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule tag/(.*)$ index.php?search=$1 [L]
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ index.php?category=$1 [L]
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^([a-z_]+)/([^/]+) index.php?category=$1&title=$2 [L]
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^([a-z_]+)/([^/]+)/([^/]+)/ index.php?category=$1&title=$2&commentspage=$3 [L]
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^([a-z0-9_-]+)/([0-9]+)/ index.php?category=$1&nbsp;articlespage=$2 [L]
    RewriteCond %{HTTP_HOST} !^www\.hiseo\.fr$ [NC]
    RewriteRule ^(.*) http://www.hiseo.fr/$1 [QSA,L,R=301]
    #
    RewriteCond %{REQUEST_URI} /$
    RewriteRule ^(.*)/$ $1 [R=301,L]
    #
    RedirectPermanent /gestion/avez-vous-besoin-d-un-cms/ [url-]http://www.hiseo.fr/organisation/avez-vous-besoin-d-un-cms/[/url]
    RedirectPermanent /contenu/ [url-]http://www.hiseo.fr/contenus/[/url]
    RedirectPermanent /redacteur_btob.php [url-]http://www.hiseo.fr/redaction-web/[/url]
    RedirectPermanent /home/redacteur-web [url-]http://www.hiseo.fr/[/url]
    RedirectPermanent /home [url-]http://www.hiseo.fr/[/url]
    #
    FileETag None
    #
    AddType 'text/html; charset=UTF-8' .html
    #
    # requires mod_expires
    ExpiresActive On
    # sets Expires and Cache-Control: max-age, but not "public"
    ExpiresDefault "modification plus 10 years"
     
    # requires mod_headers
    # adds the "public" to Cache-Control.
    Header set Cache-Control "public, max-age=31536000"
     
    #
    <IfModule mod_deflate.c>
    <FilesMatch "\.(js|css)$">
    SetOutputFilter DEFLATE
    </FilesMatch>
    </IfModule>
    #
    <IfModule mod_gzip.c>
    #Activation du mod_gzip
    mod_gzip_on Yes
    mod_gzip_can_negotiate Yes
     
    # Ajout d'un suffixe d'extension pour les fichiers précompressés
    mod_gzip_static_suffix .gz
    AddEncoding gzip .gz
    mod_gzip_update_static No
     
    # Status de mod_gzip
    mod_gzip_command_version '/mod_gzip_status'
     
    # Version HTTP du client
    # Valeurs : 1000 = HTTP/1.0, 1001 = HTTP/1.1
    mod_gzip_min_http 1000
     
    # Méthodes HTTP à prendre en charge
    mod_gzip_handle_methods GET POST
     
    # Mozilla/4.0[678] ne sait pas se servir de gzip convenablement. A exclure.
    mod_gzip_item_exclude reqheader "User-agent : Mozilla/4.0[678]"
     
    # Types de fichiers à compresser : HTML, JS, CSS, C
    # et listing des répertoires Apache
    mod_gzip_item_include file \.html$
    mod_gzip_item_include file \.shtml$
    mod_gzip_item_include file \.php$
    mod_gzip_item_include mime ^text/html$
    mod_gzip_item_include file \.txt$
    mod_gzip_item_include mime ^text/plain$
    mod_gzip_item_include file \.js$
    mod_gzip_item_include file \.css$
    mod_gzip_item_include mime ^text/css$
    mod_gzip_item_include file \.pl$
    mod_gzip_item_include handler ^CGI-script$
    mod_gzip_item_include mime ^httpd/unix-directory$
     
    # Les images sont déjà compressées, cela ne fait rien gagner.
    mod_gzip_item_exclude mime ^image/
    # Permet d'éliminer l'entête 'Transfer-encoding : chunked' et
    # de réunir tous les paquets en un seul morceau compressable.
    mod_gzip_dechunk Yes
     
    # Ajoute la taille des entêtes HTTP au document requis pour
    # connaître la taille totale de la requête.
    mod_gzip_add_header_count Yes
     
    # Envoie l'entête HTTP 'Vary' HTTP, utilisé pour les proxies.
    # Ne pas modifier !
    mod_gzip_send_vary Yes
    </IfModule>
     
    <FilesMatch "\.(html|htm)$">
    Header set imagetoolbar "no"
    </FilesMatch>
    #
    Header set P3P "policyref=\"/w3c/p3p.xml\""
    Il peut y avoir des c*****ries dedans.
    Bonne journée,
    Philippe

  13. #13
    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
    Ajoute ceci juste après le premier jeu de RewriteCond/RewriteRule (celui qui fait un RewriteRule ^(.*) $1 [L]) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)/$ $1 [R=301,QSA,L]

    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

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

    Informations forums :
    Inscription : Janvier 2004
    Messages : 46
    Points : 20
    Points
    20
    Par défaut

    Mac ! Tu es merveilleux ! Si... si... : j'insiste.
    You're a Big Chef !
    Je te dois ma reconnaissance éternelle :
    si tu as besoin de moi tu sauras où me trouver maintenant.
    Bonne journée,
    Philippe

Discussions similaires

  1. Réponses: 5
    Dernier message: 16/12/2012, 21h21
  2. Réponses: 3
    Dernier message: 21/10/2011, 11h30
  3. redirection via .htaccess
    Par link.80 dans le forum Apache
    Réponses: 3
    Dernier message: 22/08/2011, 10h33
  4. Redirection exacte d'une url avec .htaccess
    Par mims1664 dans le forum Apache
    Réponses: 1
    Dernier message: 09/01/2010, 13h31
  5. redirection <img src=""> via htaccess
    Par DemoniumOrigin dans le forum Apache
    Réponses: 4
    Dernier message: 20/11/2008, 16h26

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