Partage
  • Partager sur Facebook
  • Partager sur Twitter

Reecriture d'url Htaccess

    15 avril 2015 à 18:25:05

    Bonjour,

    Je suis entrain de développer un site web sur un serveur web apache

    j'ai des url du genre

    http://mondomaine.fr/index.php?page=login

    http://mondomaine.fr/index.php?page=compte

    j'aimerai réecrire mes pages comme ceci :

    http://mondomaine.fr/login

    http://mondomaine.fr/compte

    j'ai installer le module apache mais je n'arrive pas a réecrire mes urls

    pouvez vous m'aider ?

    • Partager sur Facebook
    • Partager sur Twitter

    On estime à environ 550 millions le nombre d'armes à feu actuellement en circulation. Autrement dit il y a un homme sur douze qui est armé sur cette planète. La seule question c'est … comment armer les onze autres ?

      16 avril 2015 à 16:06:40

      Yop,

      Quand tu parles du module apache tu parles bien tu modules Rewrite ? Pré-installé par défaut :

      a2enmod rewrite

      Après, pour faire vraiment un truc de base suivant ton exemple, tu peux faire ceci dans ton Vhost:

      RewriteEngine on
      RewriteRule login index.php?page=login
      RewriteRule compte index.php?page=compte
      

      après ça, tes pages http://mondomaine.fr/compte sera équivalent à http://mondomaine.fr/index.php?page=compte. Donc tu peux faire facilement des "href=compte"

      Si tu en as beaucoup comme ça, je te conseille un truc un peu plus propre :)

      Je t'encourage à regarder "http://httpd.apache.org/docs/2.4/fr/rewrite/intro.html"

      Psy.

      • Partager sur Facebook
      • Partager sur Twitter
        16 avril 2015 à 16:31:07

        le mode etais deja activer

        root@adminSYSon:~# a2enmod rewrite
        Module rewrite already enabled
        



        j'ai mis sa dans mon htaccess et sa ne fonctionne pas

        RewriteEngine on
        RewriteRule compte index.php?page=compte


        quand je fais http:/mondomaine.com/compte , sa me met une erreur 404 no-found 

        -
        Edité par Oldaric 16 avril 2015 à 16:33:00

        • Partager sur Facebook
        • Partager sur Twitter

        On estime à environ 550 millions le nombre d'armes à feu actuellement en circulation. Autrement dit il y a un homme sur douze qui est armé sur cette planète. La seule question c'est … comment armer les onze autres ?

          16 avril 2015 à 23:29:54

          AllowOverride n'est pas à None pour qu'Apache lise les fichiers .htaccess ?

          Avec un ancrage (\^/$), ce serait quand même plus propre.

          • Partager sur Facebook
          • Partager sur Twitter
            16 avril 2015 à 23:36:48

            Il est à All
            • Partager sur Facebook
            • Partager sur Twitter

            On estime à environ 550 millions le nombre d'armes à feu actuellement en circulation. Autrement dit il y a un homme sur douze qui est armé sur cette planète. La seule question c'est … comment armer les onze autres ?

              17 avril 2015 à 10:56:26

              As-tu au moins considéré la bonne directive AllowOverride ? (normalement, la partie <Directory>qui reprend le DocumentRoot de ton VH)

              Es-tu dans le cas où tu as besoin d'un RewriteBase ? (je ne pense pas et ça se verrait)

              -
              Edité par julp 17 avril 2015 à 10:57:59

              • Partager sur Facebook
              • Partager sur Twitter
                17 avril 2015 à 16:27:49

                Tout est ok de ce coté la mais sa ne marche pas

                -
                Edité par Oldaric 17 avril 2015 à 16:35:57

                • Partager sur Facebook
                • Partager sur Twitter

                On estime à environ 550 millions le nombre d'armes à feu actuellement en circulation. Autrement dit il y a un homme sur douze qui est armé sur cette planète. La seule question c'est … comment armer les onze autres ?

                  17 avril 2015 à 16:33:33

                  AllowOverride n'a pas à être à All pour / et il doit manquer un deny from all sur la même partie (si j'ai bonne mémoire Apache était en allow fom all par défaut).

                  Si c'est le .htaccess complet et le bon VH (c'est visiblement le VH par défaut quand tu évoquais mondomaine.com), la réécriture devrait fonctionner.

                  • Partager sur Facebook
                  • Partager sur Twitter
                    17 avril 2015 à 16:50:21

                    voila le vhost (j'en ai qu'un ; le default)

                    cette réecriture marche niquel (je l'ai tester)

                    RewriteRule ^index\.html$ /index.php 

                    mais pas les autres , voila mon .htaccess

                    Options +FollowSymlinks 
                    RewriteEngine On 
                    RewriteRule login index.php?page=login
                    




                    <VirtualHost *:80>
                    	ServerAdmin webmaster@localhost
                    
                    	DocumentRoot /var/www/
                    	<Directory />
                    		Options FollowSymLinks
                    		AllowOverride all
                    	</Directory>
                    	<Directory /var/www/>
                    		Options Indexes FollowSymLinks MultiViews
                    		AllowOverride all
                    		Order allow,deny
                    		allow from all
                    	</Directory>
                    
                    	ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
                    	<Directory "/usr/lib/cgi-bin">
                    		AllowOverride None
                    		Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
                    		Order allow,deny
                    		Allow from all
                    	</Directory>
                    
                    	ErrorLog ${APACHE_LOG_DIR}/error.log
                    
                    	# Possible values include: debug, info, notice, warn, error, crit,
                    	# alert, emerg.
                    	LogLevel warn
                    
                    	CustomLog ${APACHE_LOG_DIR}/access.log combined
                    </VirtualHost>

                    -
                    Edité par Oldaric 17 avril 2015 à 17:04:34

                    • Partager sur Facebook
                    • Partager sur Twitter

                    On estime à environ 550 millions le nombre d'armes à feu actuellement en circulation. Autrement dit il y a un homme sur douze qui est armé sur cette planète. La seule question c'est … comment armer les onze autres ?

                      25 avril 2015 à 21:14:04

                      je remonte le sujet , cela ne fonctionne toujours pas
                      • Partager sur Facebook
                      • Partager sur Twitter

                      On estime à environ 550 millions le nombre d'armes à feu actuellement en circulation. Autrement dit il y a un homme sur douze qui est armé sur cette planète. La seule question c'est … comment armer les onze autres ?

                        24 juin 2015 à 17:11:01

                        Yop,

                        Désolé de temps d'attente, un petit moment que je ne me suis pas co :x

                        Je pense que tu as dû trouver l'erreur depuis le temps ... mais au cas où !

                        Je me rend compte que c'est moi qui t'ai induit en erreur ... Si je ne dis pas de bêtise

                        Cette ligne  =>

                        RewriteRule login index.php?page=login

                        Change en(ajout du carac "/")

                        RewriteRule login /index.php?page=login

                        ou

                        RewriteRule ^/login$ /index.php?page=login


                        Si ça ne fonctionne toujours pas, peux-tu nous coller les logs ?



                        • Partager sur Facebook
                        • Partager sur Twitter
                          24 juin 2015 à 18:06:23

                          Je test et je te tien au courant :)

                          je n'ai pas encore trouvé l'erreur , mais je me suis pas non plus pensé dessus

                          • Partager sur Facebook
                          • Partager sur Twitter

                          On estime à environ 550 millions le nombre d'armes à feu actuellement en circulation. Autrement dit il y a un homme sur douze qui est armé sur cette planète. La seule question c'est … comment armer les onze autres ?

                          Reecriture d'url Htaccess

                          × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                          × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                          • Editeur
                          • Markdown