[Réglé] Problème d'écriture d'URL avec Apache et .htaccess
12 messages • Page 1 sur 1
Consultez la formation URL Rewriting et sites dynamiques de WebRankInfo / Ranking Metrics
[Réglé] Problème d'écriture d'URL avec Apache et .htaccess
Bonjours,
apres avoir parcouru une disaines de site et poser de nombreuses questions sans reponse je suis tomber par hasard sur celui si et j'ai remarquer qu'il y avait une partie dedier au fichier .htaccess ! ...
Sa tombe bien car j'ai un leger probleme avec celui si !
J'ai fait un premier code qui marche :
L'adresse de mon site est ( http://www.chamsou.webzzanine.net/accueil.htm ) vous pourrez voir ce que cela donne ...
ensuite j'ai refait le code :
pour pouvoir prendre en compte un second parametre mais sa na pas marcher !!!*
( portefolio_design.htm ==> ?page=portefolio&type=design )
Voici le type d'url qui sont present ou pourrait etre prensent dans l'avenir et que je souhaite prendre en compte :
Mon site est en construction et je pense crée d'autre page avec plus de parametre ... un peu comme sa ( ?page=services&type=design&nom=dark ... )
Mais avant tout je souhaite avoir un systeme fiable pour ameliorer le referencement de mes pages
mais aussi simplifier l'url qui s'affichera au visiteur !!!
Je voudrai donc savoir si vous pouviez m'aider en m'expliquand ou se trouve l'erreur ou du moin qu'est ce que j'ai oublier
Merci d'avance !
apres avoir parcouru une disaines de site et poser de nombreuses questions sans reponse je suis tomber par hasard sur celui si et j'ai remarquer qu'il y avait une partie dedier au fichier .htaccess ! ...
J'ai fait un premier code qui marche :
- Code: Tout sélectionner
RewriteEngine on
RewriteRule ^([a-z]+)\.html$ ?page=$1 [L]
L'adresse de mon site est ( http://www.chamsou.webzzanine.net/accueil.htm ) vous pourrez voir ce que cela donne ...
ensuite j'ai refait le code :
- Code: Tout sélectionner
RewriteEngine on
RewriteRule ^([a-z]+)\.html$ ?page=$1 [L]
RewriteRule ^([a-z]+)_([a-z]+)\.html$ ?page=$1&type=$2 [L]
pour pouvoir prendre en compte un second parametre mais sa na pas marcher !!!*
( portefolio_design.htm ==> ?page=portefolio&type=design )
Voici le type d'url qui sont present ou pourrait etre prensent dans l'avenir et que je souhaite prendre en compte :
- Code: Tout sélectionner
?page=portefolio&type=design
?page=portefolio&type=php
?page=services&type=tuto
etc ...
Mon site est en construction et je pense crée d'autre page avec plus de parametre ... un peu comme sa ( ?page=services&type=design&nom=dark ... )
Mais avant tout je souhaite avoir un systeme fiable pour ameliorer le referencement de mes pages
Je voudrai donc savoir si vous pouviez m'aider en m'expliquand ou se trouve l'erreur ou du moin qu'est ce que j'ai oublier
Merci d'avance !
Dernière édition par Chamsou le Ven Avr 15, 2005 19:17, édité 1 fois.
- Invité
Tentes de mettre le chemin complet
où page.php est correspond à ton code
- Code: Tout sélectionner
RewriteEngine on
RewriteRule ^([a-z]+)\.html$ /page.php?page=$1 [L]
RewriteRule ^([a-z]+)_([a-z]+)\.html$ /page.php?page=$1&type=$2 [L]
où page.php est correspond à ton code
- Invité
tout cela est très étonnant, par hasard, tentes encore un truc dans ce genre
Au pire redirige tout vers ta page d'index
et parse la variable $_SERVER['REQUEST_URI'] dans ton code
Quel est le code HTTP retourné par le serveur?
Fais tu tes tests sur un serveur http chez toi ou directement sur ton site?
As tu des accès à tes fichier error.log et access.log et éventuellement rewrite.log (en modifiant ton httpd.conf d'apache comme suit)
- Code: Tout sélectionner
RewriteEngine on
RewriteRule ^([a-z]+)_([a-z]+)\.html$ http://ton.domaine//page.php?page=$1&type=$2 [L]
RewriteRule ^([a-z]+)\.html$ http://ton.domaine/index.php?page=$1 [L]
Au pire redirige tout vers ta page d'index
- Code: Tout sélectionner
RewriteRule ^(.*)$ index.php [L]
et parse la variable $_SERVER['REQUEST_URI'] dans ton code
- Code: Tout sélectionner
if($_SERVER['REQUEST_URI'] == "/index.php") {
$_SERVER['REQUEST_URI'] = "/";
}
$redirect = ereg_replace("^/(.*)\.html$", "\\1", $redirect);
if(!$empty(redirect)) {
$params= explode("/", $redirect);
$page=$params[0];
$type=$params[1];
} else {
/* c'est ta page d'accueil */
}
Quel est le code HTTP retourné par le serveur?
Fais tu tes tests sur un serveur http chez toi ou directement sur ton site?
As tu des accès à tes fichier error.log et access.log et éventuellement rewrite.log (en modifiant ton httpd.conf d'apache comme suit)
- Code: Tout sélectionner
RewriteLog /path/rewrite.log
RewriteLogLevel 3
je vai essayer ce que tu vien de me montré merci ...
1) ce code ok sa marche :
- Code: Tout sélectionner
RewriteEngine on
RewriteRule ^([a-z]+)\.html$ ?page=$1 [L]
2) mais celui la non :
- Code: Tout sélectionner
RewriteEngine on
RewriteRule ^([a-z]+)\.html$ ?page=$1 [L]
RewriteRule ^([a-z]+)_([a-z]+)\.html$ ?page=$1&type=$2 [L]
3) donc le probleme doit surement venir de la :
- Code: Tout sélectionner
RewriteRule ^([a-z]+)_([a-z]+)\.html$ ?page=$1&type=$2 [L]
mais j'ai beau regarder encore et encore je comprend pas pk sa ne marche pas ...
quelqu'un aurai t'il un code simple d'url rewrit qui marche ne serai ce que pour voir un peu si les codes diférent !
ps: si vous avait un lien qui explique tout sa et meme si je l'ai deja vue sa serai simpas de l'ecrire
- Invité
Déposes une page nommée phpinfo.php avec le code suivant :
et dans ton .htaccess
Et appelles des page en .html à partir du browser.
- http://www.chamsou.webzzanine.net/page1.html
- http://www.chamsou.webzzanine.net/page2_param.html
Qu'obtiens tu?
Attention: ce sont des html qui sont gérés ici et non des htm comme sur ton site.
- Code: Tout sélectionner
<?php
phpinfo();
?>
et dans ton .htaccess
- Code: Tout sélectionner
RewriteRule ^([a-z]+)\.html$ /phpinfo.php?page=$1 [L]
RewriteRule ^([a-z]+)_([a-z]+)\.html$ /phpinfo.php?page=$1&type=$2 [L]
Et appelles des page en .html à partir du browser.
- http://www.chamsou.webzzanine.net/page1.html
- http://www.chamsou.webzzanine.net/page2_param.html
Qu'obtiens tu?
Attention: ce sont des html qui sont gérés ici et non des htm comme sur ton site.
darkfire a écrit:Attention: ce sont des html qui sont gérés ici et non des htm comme sur ton site.
bon je me relance dans les codes !!!
et encore Merci pour tout ...
ps : Etrange la premiere ligne aussi contient l'extention html et sa a quand meme marcher
- Invité
De nada...
test quand même le phpinfo, avec cette fois ci l'extension html, tu verras c'est très instructif aux niveau de toutes les variables d'environnement que l'on récupère.
test quand même le phpinfo, avec cette fois ci l'extension html, tu verras c'est très instructif aux niveau de toutes les variables d'environnement que l'on récupère.
voici l'url est ce que tu peu me dire ce que je devait regarder la dedans car je comprend casiment rien a part quelques mot familliers
http://www.chamsou.webzzanine.net/teste.php
- Invité
le plus important:
1 - version php sur le serveur et sa configuration
- version utile par rapport à l'implémentation et la validité des fonctions et lors de changement majeur de version (nouveaux concepts, etc...)
- dans ce post la personne peut effectivement confirmer que la valeur allow_url_fopen de la configuration php est à "off".
2 - les headers HTTP de ta requête et de la réponse
(enfin pour ça y a d'autres outils)
3 - toutes les variable d'envirronement générées par ta requête sur le serveur HTTP -> _SERVER["var"] (en bas de page) qui sont utlisables dans tes scripts (variable super globale $_SERVER["xx"])
-> a tester sans ou lors de redirection
1 - version php sur le serveur et sa configuration
- version utile par rapport à l'implémentation et la validité des fonctions et lors de changement majeur de version (nouveaux concepts, etc...)
- dans ce post la personne peut effectivement confirmer que la valeur allow_url_fopen de la configuration php est à "off".
2 - les headers HTTP de ta requête et de la réponse
(enfin pour ça y a d'autres outils)
3 - toutes les variable d'envirronement générées par ta requête sur le serveur HTTP -> _SERVER["var"] (en bas de page) qui sont utlisables dans tes scripts (variable super globale $_SERVER["xx"])
-> a tester sans ou lors de redirection
12 messages • Page 1 sur 1
Formation recommandée sur ce thème :
Formation URL Rewriting et sites dynamiques : apprenez comment mettre en place la réécriture d'URL, comment optimiser vos URL et profiter de vos pages dynamiques pour booster votre référencement. Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.
Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.
Lectures recommandées sur ce thème :
- Suite de l'article sur le fichier .htaccess : l'URL rewriting
- Article sur le fichier .htaccess
- 3ème partie de l'article .htaccess : les réécritures conditionnelles
- Comment éviter les contenus dupliqués (avec/sans le www)
- L'URL Rewriting expliqué aux débutants
- Optimiser le référencement d'un forum phpBB : réécriture d'URL
- Aperçu des différents types de redirection
- Séminaire URL Rewriting et sites dynamiques
- Référencement d'un forum phpBB
- Domaine favori - URL canonique
Consultez la description détaillée des produits ou services de Google suivants : Google Web Toolkit
- Liste des backlinks
Cet outil vous permet d'analyser en détails la "popularité" de votre site sur Google. En plus du nombre de liens pris en compte par Google, il calcule le pourcentage de liens internes parmi tous les liens, et il affiche les premières URL trouvées. - Transformer des textes non cliquables en liens
Cet outil vous permet de trouver des pages citant votre site mais ne faisant pas (encore) de lien. Il suffira parfois d'un simple mail pour transformer cette simple citation en lien (backlink).
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités


le forum