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 non fonctionnelle sur le localhost mais ok sur le distant


Sujet :

Apache

  1. #1
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 644
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 644
    Points : 66 671
    Points
    66 671
    Billets dans le blog
    1
    Par défaut Redirection non fonctionnelle sur le localhost mais ok sur le distant
    Mes directives apache:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <IfModule mod_rewrite.c>
    <FilesMatch "\.php$">
    RewriteEngine On
    RewriteRule ^.*-prod_(\d+)\.php$ /produit.php?id=$1 [L]
    </FilesMatch>
    </IfModule>

    http://************.fr/SLG-prod_506.php

    il devrait me rediriger vers

    http://************.fr/produit.php?id=506

    Or il reste sur un 404
    et si je met direct le lien en dur il me redirige vers la page d'accueil

    Cela veut-il dire que j'aurais une autre règle qui interfère ?

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 644
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 644
    Points : 66 671
    Points
    66 671
    Billets dans le blog
    1
    Par défaut
    Bon il semble que le script de génération de mes wordingurls ne prenait pas en compte les fait qu'il puisse y avoir des caractères spéciaux dans l'url ...
    une fois ces caractères spéciaux retirés tout fonctionne bien.

    Par contre cela ne fonctionne pas en local, bien qu'a prioiri le module rewriting soit bien activé également en local.
    Quel pourrait en être la cause ?

  3. #3
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 644
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 644
    Points : 66 671
    Points
    66 671
    Billets dans le blog
    1
    Par défaut
    Question subsidiaire

    J'ai une directive qui redirige tout appel de fichier non existant vers l'index
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    #RewriteCond %{REQUEST_FILENAME} !-f
    #RewriteRule ^.*\.php$ http://www.******.fr/info.php?nopage=true [R=301,L,co=nopage:true:******.fr:500:/] #with cookies 
    #RewriteRule ^.*\.php$ http://www.******.fr/info.php?nopage=true [R=301,L,co=nopage:true:******.fr:500:/]
    Mes wordingurls n'existent pas ...
    Il faut donc mettre la directive de rewriting avant ? est-ce que l'ordre des directives à une importance?

  4. #4
    Expert confirmé
    Avatar de Doksuri
    Profil pro
    Développeur Web
    Inscrit en
    Juin 2006
    Messages
    2 477
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 477
    Points : 4 688
    Points
    4 688
    Par défaut
    httpd.apache.org/docs/current/fr/rewrite/intro.html
    Si vous spécifiez plus d'une directive RewriteCond, ces directives doivent toutes être satisfaites pour que la règle RewriteRule suivante s'applique.

  5. #5
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 644
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 644
    Points : 66 671
    Points
    66 671
    Billets dans le blog
    1
    Par défaut
    j'ai un filesmatch ...
    donc si pas de condition ça doit s'appliquer ...

    Le souci n'est pas pourquoi ça ne marche pas en local !!! ça fonctionne sur le serveur distant.

    Du coup "on" m'a insinué que cela pouvait venir de easyphp.
    Du coup je suis passé sur wamp ...
    et la ho surprise pareil !!!

  6. #6
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 644
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 644
    Points : 66 671
    Points
    66 671
    Billets dans le blog
    1
    Par défaut
    J'ai tenté de mettre un fichier .htaccess à la racine du www avec :

    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
    <Directory "D:/[path]">
    Options FollowSymLinks Indexes
    AllowOverride All
    Order deny,allow
    Allow from all
     
     
    <IfModule mod_rewrite.c>
    #redirection wordingursl
    <FilesMatch "-p([0-9]+)\.php$">
    AllowOverride All
    Options +FollowSymlinks 
    RewriteEngine On
    RewriteRule -p([0-9]+)\.php$ /produit.php?idprod=$1 [L]
    </FilesMatch>
    </IfModule>
     
    </Directory>
    J'ai aussi tenté dans la fichier alias, à la racine du site ...

    mais nada ...

    a croire que l'on ne peux pas faire de rewriting en local ????
    je rappelle que cela fonctionne avec le même fichier htaccess sur le serveur distant !

  7. #7
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 644
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 644
    Points : 66 671
    Points
    66 671
    Billets dans le blog
    1
    Par défaut
    Bon j'avance dans mes investigations

    la htaccess à la racine du site à l'air d'être pris en compte car une directive de redirection comme ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <FilesMatch "\.php$">
    Options +FollowSymlinks 
    RewriteEngine On
    #Maintenance
    RewriteCond %{REQUEST_URI} !^.*/Maintenance
    RewriteRule ^(.*)$ /Maintenance/index.php [R=302,L]
    </FilesMatch>
    </IfModule>
    Redirige mais pas au bon endroit

    au lieu de rediriger vers
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    127.0.0.1:80/SiteWeb/Maintenance.index.php
    elle redirige vers
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    127.0.0.1:80/Maintenance.index.php
    J'ai donc tenté de mettre un
    Pareil avec un DocumentRoot
    mais sans succès

    Que faut-il que je rajoute comme directive pour que la redirection se fasse bien à partir de l'Alias ?

  8. #8
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 644
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 644
    Points : 66 671
    Points
    66 671
    Billets dans le blog
    1
    Par défaut
    Bon j'avance ...

    Avec le rewriteBase ça fonctionne mieux et un . avant l'url de redirection
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <IfModule mod_rewrite.c>
    #redirection wordingursl
    <FilesMatch "-p([0-9]+)\.php$">
    AllowOverride All
    Options +FollowSymlinks 
    RewriteEngine On
    RewriteBase /SiteWeb/
    RewriteRule -p([0-9]+)\.php$ ./produit.php?idprod=$1 [L]
    </FilesMatch>
    </IfModule>
    Il me reste un souci a résoudre avec à priori une interférence avec les autres Alias ...

  9. #9
    Invité
    Invité(e)
    Par défaut
    Si tu as un problème avec les alias, cela vient peut être de ton fichier hosts ?
    As tu bien ajouté les alias dans ton fichier hosts ?

    L'alias "localhost" est résolu grâce au fichier /etc/hosts

    Il en va de même pour tous les autre alias qui doivent être renseignés et vérifiés comme étant fonctionnels.

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

Discussions similaires

  1. .war non fonctionnelle sur Tomcat
    Par sarsar88 dans le forum Tomcat et TomEE
    Réponses: 3
    Dernier message: 08/04/2012, 21h17
  2. redirection non fonctionnelle
    Par omelhor dans le forum Apache
    Réponses: 2
    Dernier message: 04/03/2012, 10h19
  3. Réponses: 8
    Dernier message: 13/09/2011, 18h06
  4. API FindWindow non fonctionnelle sur Windows 7 64 Bits
    Par tarzan68 dans le forum API, COM et SDKs
    Réponses: 9
    Dernier message: 07/07/2011, 10h06
  5. KeyPress non-fonctionnel sur textbox
    Par gwharl dans le forum C#
    Réponses: 3
    Dernier message: 08/03/2011, 22h54

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