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 rewriting sous xampp


Sujet :

Apache

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    en reconversion
    Inscrit en
    Avril 2018
    Messages
    50
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Eure et Loir (Centre)

    Informations professionnelles :
    Activité : en reconversion
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2018
    Messages : 50
    Par défaut URL rewriting sous xampp
    Bonjour à tous

    J'ai un problème avec la réécriture d'URL.
    A l'origine je faisais un tuto sur le MVC sur un vieux pc windows avec php 5.6 et Wampserver
    Tout fonctionnait.
    J'ai décidé de le tester sur un pc plus récent fonctionnant sur linux et xampp + php7.
    Et là ! gros souci ! Comme dirait une certaine Céline D : "ça marche plus s' t' engin là" rien ne fonctionne.
    J'ai toujours une erreur 404 à l'écran.Je me suis dit que c'était le module mod_rewrite qui n'était pas activé et j'ai cherché le fichier htppd.conf dans le système.Mais n'étant pas encore trop familier avec linux j'ai fait une recherche et j'ai trouvé 3 fichiers .
    Un dans /opt/lampp/apache2.conf
    un autre dans /opt/lampp/etc
    un dernier dans /opt/lampp/etc/original

    Je ne sais pas trop lequel modifier. j'ai fait des recherches sur le net, essayé les solutions proposées mais rien ne marche.En principe (d'après mes recherches) le module est activé par défaut dans xampp contrairement à une installation du paquet Apache pour lequel il faut l'activer en ligne de commande (de mémoire a2enmode mod_rewrite).

    Voici ce que j'ai trouvé dans deux des fichiers.
    Dans le premier fichier, j'ai ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Alias /bitnami/ "/opt/lampp/apache2/htdocs/"
    Alias /bitnami "/opt/lampp/apache2/htdocs"
     
    <Directory "/opt/lampp/apache2/htdocs">
        Options Indexes FollowSymLinks
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>
    dans le second j'ai bien: LoadModule rewrite_module modules/mod_rewrite.so décommenté.

    Je n'ai pas touché au troisième par sécurité (je ne sais pas à quoi il sert, une sauvegarde peut être ?).

    J'ai donc décidé de partir sur un exemple simple pour tester l'URL Rewriting.
    Dans mon dossier opt/lampp/htdocs/www/, j'ai créé un dossier urlRewrite avec dedans, un fichier test.html et un htaccess.

    Mon htaccess contient la règle suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Options +FollowSymlinks
    RewriteEngine On
    RewriteRule ^foo.html$ test.html[L]
    Mais quand je tape dans l'URL http://localhost/www/urlRewrite/foo.html

    J'ai une page affichant: objet non trouvé! erreur 404

    Est ce que j'ai oublié quelque chose ? car là, je ne sais plus où chercher.

    Merci pour votre aide

  2. #2
    Membre émérite

    Homme Profil pro
    linux, pascal, HTML
    Inscrit en
    Mars 2002
    Messages
    649
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 76
    Localisation : Belgique

    Informations professionnelles :
    Activité : linux, pascal, HTML
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2002
    Messages : 649
    Billets dans le blog
    1
    Par défaut
    Bonjoue
    Pour ajouter ce module et redémarrer apache
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sudo service apache2 restart

  3. #3
    Membre averti
    Homme Profil pro
    en reconversion
    Inscrit en
    Avril 2018
    Messages
    50
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Eure et Loir (Centre)

    Informations professionnelles :
    Activité : en reconversion
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2018
    Messages : 50
    Par défaut
    Merci pour cette réponse , Michel

    mais j'ai testé cette méthode et le terminal indique "command: a2enmode not found".
    Je pense que c'est dû à l’installation de xampp qui est différente de celle d'apache toute seule.
    Comme je l'ai écrit plus haut le module doit être activer par défaut (après je peux me trompé) lors de l'installation de xampp. Je ne vois pas ce qui cloche ? sous windows j'ai sélectionné le module et ça a fonctionné mais sous linux ça m'échappe. Je continue mes recherches.

  4. #4
    Membre émérite

    Homme Profil pro
    linux, pascal, HTML
    Inscrit en
    Mars 2002
    Messages
    649
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 76
    Localisation : Belgique

    Informations professionnelles :
    Activité : linux, pascal, HTML
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2002
    Messages : 649
    Billets dans le blog
    1
    Par défaut
    dans le répertoire apache2, il y a deux répertoires utiles
    mods-available et mods-enabled
    Le premier contient tous les modules et normalement, le module rewrite.load
    Le deuxièmecontient les alias vers les modules utilisés par apache et donc il suffit d'y ajouter un aliasvers ../mods-available/rewrite.load
    C'est ce que fait automatiquement a2enmod

  5. #5
    Membre averti
    Homme Profil pro
    en reconversion
    Inscrit en
    Avril 2018
    Messages
    50
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Eure et Loir (Centre)

    Informations professionnelles :
    Activité : en reconversion
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2018
    Messages : 50
    Par défaut
    Désolé, mais je n'ai pas les deux répertoires que vous citez.
    j'ai fait une recherche des répertoires sur le système et j'ai un répertoire mods-available mais dans le dossier etc/PHP/7.0/ . Je ne pense pas que ce soit ça, car il n'y a que des fichiers avec l'extension ini.
    Mais rien dans apache2. Dans apache2 j'ai 3 dossiers scripts, htdocs et conf.

  6. #6
    Membre émérite

    Homme Profil pro
    linux, pascal, HTML
    Inscrit en
    Mars 2002
    Messages
    649
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 76
    Localisation : Belgique

    Informations professionnelles :
    Activité : linux, pascal, HTML
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2002
    Messages : 649
    Billets dans le blog
    1
    Par défaut
    Après une petite recherche, il semblerait que la ligne à modifier soit dans httpd.conf
    il faut dé-commenter la ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    #LoadModule rewrite_module modules/mod_rewrite.so
    qui devient donc
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    LoadModule rewrite_module modules/mod_rewrite.so
    et remplacer toutes les occurences de
    par et redémarrer apache

    voir :https://specialties.bayt.com/en/spec...der-ubuntu-os/

Discussions similaires

  1. Réponses: 1
    Dernier message: 06/12/2007, 17h13
  2. Problèmes URL Rewriting
    Par mystar dans le forum Apache
    Réponses: 1
    Dernier message: 13/11/2007, 11h06
  3. [URL Rewriting] Problème URL Rewriting -> CSS
    Par Cartman.inc dans le forum Apache
    Réponses: 8
    Dernier message: 23/04/2007, 14h29
  4. [EasyPHP] URL Rewriting sous EasyPHP 1.8
    Par Saiyan dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 7
    Dernier message: 30/12/2006, 13h35
  5. Problème URL rewriting
    Par Zan dans le forum Apache
    Réponses: 4
    Dernier message: 24/11/2006, 19h04

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