URL rewriting avec Htaccess qui ne fonctionne pas

Discussion dans 'Développement d'un site Web ou d'une appli mobile' créé par sff, 1 Novembre 2016.

Tags:
  1. sff
    sff WRInaute impliqué
    Inscrit:
    2 Février 2005
    Messages:
    525
    J'aime reçus:
    0
    Bonjour,

    sur mon site je souhaite transformer les url du type : monsite.com/?page=mapage vers une url comme ceci : monsite.com/mapage.html

    J'ai pour cela crée un fichier htaccess que j'ai mis à la racine de mon site avec ceci à l'intérieur :
    Code:
    Options +FollowSymlinks
     
    RewriteEngine On
     
    RewriteRule ^([a-zA-Z0-9]*)\.html$   index.php?page=$1 [L]
    Malheureusement cela ne fonctionne pas du tout et me ramène en permanence vers une page 404.

    Pouvez-vous m'aider ?

    Merci d'avance
     
  2. ortolojf
    ortolojf WRInaute accro
    Inscrit:
    14 Août 2002
    Messages:
    2 882
    J'aime reçus:
    12
    Bonjour Sff

    "mapage" ne peut contenir que des lettres ou chiffres ?

    Les voyelles ne sont jamais accentuées ?

    Pas de caractères autres que lettres ou chiffres ?

    Si c'est le cas => Problème de regexp.

    Respectueusement.
     
  3. sff
    sff WRInaute impliqué
    Inscrit:
    2 Février 2005
    Messages:
    525
    J'aime reçus:
    0
    Oui mapage ne contient uniquement que des lettres et de chiffres.
     
  4. ortolojf
    ortolojf WRInaute accro
    Inscrit:
    14 Août 2002
    Messages:
    2 882
    J'aime reçus:
    12
    Bonjour Monsieur

    Et... Un + au lieu de * ?

    Sinon, problème de serveur web ?

    Il faut : "AllowOverride On" dans /etc/httpd/httpd.conf

    ( Ou dans le fichier de virtual host ).

    Respectueusement.
     
  5. sff
    sff WRInaute impliqué
    Inscrit:
    2 Février 2005
    Messages:
    525
    J'aime reçus:
    0
    Ca ne fonctionne pas mieux. Je suis chez Hostinger pour info
     
  6. ortolojf
    ortolojf WRInaute accro
    Inscrit:
    14 Août 2002
    Messages:
    2 882
    J'aime reçus:
    12
    Bonjour Monsieur

    Regarder le log de Apache.

    Hostinger mutualisé ?

    Au lieu de index.php, mettre toute l'url ?

    Respectivement.

    Jean François Ortolo
     
  7. sff
    sff WRInaute impliqué
    Inscrit:
    2 Février 2005
    Messages:
    525
    J'aime reçus:
    0
  8. sff
    sff WRInaute impliqué
    Inscrit:
    2 Février 2005
    Messages:
    525
    J'aime reçus:
    0
    Re: URL rewriting : des mots interdit ?

    Bon c'est bon, il semblerait que le problème venait de Hostinger.

    Aujourd'hui cela fonctionne avec ce code :
    Code:
    Options +FollowSymlinks
    RewriteEngine On
     
    RewriteRule ^([-a-z0-9]*)\.html$  index.php?page=$1 [L]
    Mais une chose est bizarre, j'ai veux avoir 2 url comme ceci : privacy-policy.html

    et

    terms-and-conditions.html

    Mais les mots conditions et policy posent problème, pourquoi ?

    Si j'utilise polici et condition sans le s cela fonctionne.

    Ce sont des mots interdit pour la réecriture d'url ?

    Merci d'avance
     
  9. ortolojf
    ortolojf WRInaute accro
    Inscrit:
    14 Août 2002
    Messages:
    2 882
    J'aime reçus:
    12
    Rebond

    Toujours la même chose : Il faut un tiret ( - ), à la fin de la regexp ( [ -] )

    Et puis boudiou, pourquoi * plutôt que + ?

    Respectueusement.
     
  10. sff
    sff WRInaute impliqué
    Inscrit:
    2 Février 2005
    Messages:
    525
    J'aime reçus:
    0
    Ok merci beaucoup pour l'aide, en effet c'était le tiret qu'il manquait.

    Sinon j'ai une autre question, je souhaite également transformer une url de ce genre ;

    monsite.com/?do=fr

    en ceci :

    fr.monsite.com

    J'ai mis ceci dans le htaccess

    Code:
    RewriteCond %{QUERY_STRING} ^do=([a-z]+)$ 
    RewriteRule ^ http://%1.monsite.com [R=301,L]
    Cela fonctionne, mais j'ai du coup une adresse de ce genre : fr.monsite.com/?do=fr

    Comment supprimer le ?do=fr ?

    Merci
     
  11. UsagiYojimbo
    UsagiYojimbo WRInaute accro
    Inscrit:
    23 Novembre 2005
    Messages:
    11 875
    J'aime reçus:
    72
    Code:
    RewriteCond %{QUERY_STRING} ^do=([a-z]+)$
    RewriteRule ^ http://%1.monsite.com? [R=301,L]
    
     
  12. sff
    sff WRInaute impliqué
    Inscrit:
    2 Février 2005
    Messages:
    525
    J'aime reçus:
    0
    Merci beaucoup !

    Est ce qu'on peut éviter de mettre monsite.com et faire appel à une autre variable qui ferait la meme chose ?

    Merci
     
Chargement...
Similar Threads - rewriting Htaccess fonctionne Forum Date
test de page html avec htaccess (url rewriting) URL Rewriting et .htaccess 16 Juin 2018
Problème accent URL Rewriting et .htaccess URL Rewriting et .htaccess 4 Novembre 2016
Url rewriting Suppression de www et .com unqiuement dans un repertoire avec htaccess URL Rewriting et .htaccess 16 Août 2014
URL rewriting : un RewriteRule sans effet dans le htaccess URL Rewriting et .htaccess 19 Juin 2014
Pattern PRG, ordre des get, url rewriting - htaccess Développement d'un site Web ou d'une appli mobile 14 Février 2013
Url rewriting htaccess URL Rewriting et .htaccess 31 Mai 2011
URL Rewriting via .htaccess > incompréhension URL Rewriting et .htaccess 30 Novembre 2010
URL Rewriting et .htaccess Développement d'un site Web ou d'une appli mobile 20 Octobre 2010
URL RedirectPermanent et Rewriting dans .htaccess URL Rewriting et .htaccess 29 Mai 2010
Rewriting url avec variable par .htaccess URL Rewriting et .htaccess 12 Avril 2010
  1. Ce site utilise des cookies. En continuant à utiliser ce site, vous acceptez l'utilisation des cookies.
    Rejeter la notice