Ma redirection 301 ne fonctionne pas

WRInaute occasionnel
Bonjour,

J'ai mis en ligne une nouvelle version de mon site internet et les url sont tantôt différentes et tantôt effacées.
Pour les premières, il faut que je fasse pointer les anciennes vers les nouvelles.
Pour les secondes, je pense qu'il faut que je redirige vers la page d'accueil.

J'ai cherché quelques tutos, mais ils donnent soit des conseils pour rediriger d'un domaine vers un autre en conservant la même structure d'url, soit des conseils pour rediriger toutes les urls à l'intérieur d'un même site, en forçant un changement de structure.
Pour ma part, je ne veux changer que quelques url (une centaine), au coup par coup.

Bref, ne compliquons pas tout.
J'ai fait comme ça :
Code:
RedirectPermanent http://www.monsite.com/article.php/_/categorie/   http://www.monsite.com/article.php/_/categorie/sous-categorie/
Ca ne redirige rien du tout.


Comment faire, donc ?

Merci d'avance.
 
WRInaute accro
Plutôt comme ceci:
Code:
RedirectPermanent /article.php/_/categorie/   http://www.monsite.com/article.php/_/categorie/sous-categorie/
Jean-Luc
 
WRInaute occasionnel
Merci pour ta réponse, jeanluc. Ceci dit, ça ne fonctionne pas.
Je précise que j'ai déjà cela dans le .htaccess. Peut-être cela influence-t'il les choses ?

Code:
<IfModule mod_rewrite.c>
Options -MultiViews
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule \.(jpeg|jpg|gif|png)$ /public/404.php [NC,L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
 
WRInaute accro
Alorsladaccord a dit:
Peut-être cela influence-t'il les choses ?

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d


Ces lignes disent que si le fichier (f) ou le dossier (d) demandé (REQUEST_FILENAME) n'existe pas alors ... RewriteRule (action a faire)

Il faut donc placer le RedirectPermanent (qui a la bonne syntaxe) avant d'appliquer le traitement de ces lignes (logique car sinon il ne sera jamais pris en compte).
 
WRInaute occasionnel
Eh oui, mais ça ne fonctionne pas non plus. Ceci dit zeb, si je les place après, ne sont-ce pas plutôt les lignes que tu indiques qui reprennent le dessus et annulent celles que je tente d'ajouter, puisqu'elles passent à la suite ? Enfin dans tous les cas ça ne fonctionne pas, de toute façon...

Je pourrais envoyer un courriel au support IPB. Mais avant cela, n'est-il pas possible de le faire en php, dans le header ?
Je vais voir ça tout de suite, je reviens vous dire.
 
WRInaute occasionnel
J'ai trouvé ce bout de code, mais il faudrait une condition if qui teste l'url de la page et génère la redirection le cas échéant. Je ne me souviens plus comment faire, ni même s'il est possible de tester l'ur ... :oops:

Code:
<?php    
  header('Status: 301 Moved Permanently', false, 301);      
  header('Location: adresse_de_la_page_B');      
?>

if($url='http://www.monsite.com/article.php/categorie/') {code ci-dessus;}...
quelque chose comme ça.

M'enfin c'est nul, ça devrait fonctionner avec le .htaccess....

**edit**

Ce n'est pas plutôt avec l'hébergeur qu'il faut voir ces problèmes de redirection ?
 
WRInaute accro
Après avoir regardé plus en détail, je ne comprends plus ce que tu cherches à rediriger. Tu avais écrit:
Code:
RedirectPermanent http://www.monsite.com/article.php/_/categorie/   http://www.monsite.com/article.php/_/categorie/sous-categorie/
Si /article.php/_/categorie/ représente un répertoire, quand on redirige vers /article.php/_/categorie/sous-categorie/, on risque de créer une boucle infinie puisqu'on aboutit dans un sous-répertoire du répertoire de départ.

Jean-Luc
 
WRInaute occasionnel
D'accord, bien vu jeanluc. J'ai essayé avec l'url d'une page d'article et non d'une catégorie et effectivement ça fonctionne normalement.
J'ai testé aussi ce que disais zeb en plaçant le code après le rewrite et là ça me redirige vers la page d'accueil.

Bien, super, voilà une bonne chose d'à moitié faite.

Merci à vous deux et bonne journée :)
 
WRInaute occasionnel
Bonjour,

J'ai encore un problème avec ces histoires de redirection.
Lorsque je fais comme vous m'avez dit, ça fonctionne dans ce cas :
Code:
RedirectPermanent /nom-de-la-page.htm  http://www.monsite.com/article.php/_/categorie/sous-categorie/nom-de-la-page
Par contre, si l'URL de la page d'origine est plus complexe, avec des catégories, alors ça foire :
Code:
RedirectPermanent /article.php/_/categorie/nom-de-la-page.htm  http://www.monsite.com/article.php/_/categorie/sous-categorie/nom-de-la-page
En ce cas, je suis redirigé vers /article.php.

Comment corriger cela, s'il-vous-plait ?

**EDIT**
A mon grand étonnement, ça fonctionne dans le deuxième cas en supprimant les sous-répertoires et en ne laissant que nom-de-la-page.htm. Je me demande comment le serveur peut s'y retrouver, mais enfin, c'est le résultat qui compte...
 
WRInaute occasionnel
Ma note "edit" est en fait sans fondement.

Il faut que j'arrive à faire une redirection comme dit dans mon dernier message, à partir d'une url "complexe", c'est-à-dire avec des sous-répertoires.

Diantre, ne peut-on pas forcer la redirection au moyen d'une redirection "fixe", sans interprétation du chemin par le chemin ?
 
WRInaute occasionnel
Ah oui, avec un urlrewriting, je n'y avais pas pensé. J'ai perdu l'habitude.

Bah j'ai pas envie de me prendre la tête, tant pis. Mais merci quand même.
 
Nouveau WRInaute
Bonjour,

Je ne suis pas dev et je souhaite faire quelques redirections.
j'ai écrit cela à la fin du HTACCESS et ça ne fonctionne pas.
j'imagine que c'est lié au rewrite. Puis je supprimer ces lignes ?

Code:
SetEnv PHP_VER 5
SetEnv REGISTER_GLOBALS 0
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^api/?(.*)$ /webservice/dispatcher.php?url=$1 [QSA,L]
</IfModule>
ErrorDocument 404 /404.php
DirectoryIndex index.php

# ~~start~~ Do not remove this comment, Prestashop will keep automatically the code outside this comment when .htaccess will be generated again
# .htaccess automaticaly generated by PrestaShop e-commerce open-source solution
# http://www.prestashop.com - http://www.prestashop.com/forums

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP_HOST} ^bigflex.fr$
RewriteRule . - [E=REWRITEBASE:/]
RewriteRule ^api/?(.*)$ %{ENV:REWRITEBASE}webservice/dispatcher.php?url=$1 [QSA,L]

# AlphaImageLoader for IE and fancybox
RewriteCond %{HTTP_HOST} ^bigflex.fr$
RewriteRule ^images_ie/?([^/]+)\.(jpe?g|png|gif)$ js/jquery/plugins/fancybox/images/$1.$2 [L]
</IfModule>

#If rewrite mod isn't enabled
ErrorDocument 404 /index.php?controller=404

# ~~end~~ Do not remove this comment, Prestashop will keep automatically the code outside this comment when .htaccess will be generated again



# start ~ module watermark section
Options +FollowSymLinks
RewriteEngine On
RewriteCond expr "! %{HTTP_REFERER} -strmatch '*://%{HTTP_HOST}*/admin0/*'"
RewriteRule [0-9/]+/[0-9]+\.jpg$ - [F]
# end ~ module watermark section

Redirect 301 / https://www.direct-stores.com/
RedirectPermanent /index.php?id_category=21&controller=category https://www.direct-stores.com/
RedirectPermanent /index.php?id_category=1&controller=category https://www.direct-stores.com/
RedirectPermanent /index.php?id_category=2&controller=category https://www.direct-stores.com/
RedirectPermanent /index.php?id_category=3&controller=category https://www.direct-stores.com/
RedirectPermanent /index.php?id_category=4&controller=category https://www.direct-stores.com/
RedirectPermanent /index.php?id_category=5&controller=category https://www.direct-stores.com/
RedirectPermanent /index.php?id_category=6&controller=category https://www.direct-stores.com/
RedirectPermanent /index.php?id_category=7&controller=category https://www.direct-stores.com/
RedirectPermanent /index.php?id_category=8&controller=category https://www.direct-stores.com/
RedirectPermanent /index.php?id_category=9&controller=category https://www.direct-stores.com/
RedirectPermanent /index.php?id_category=10&controller=category https://www.direct-stores.com/
RedirectPermanent /index.php?id_category=11&controller=category https://www.direct-stores.com/
RedirectPermanent /index.php?id_category=12&controller=category https://www.direct-stores.com/
RedirectPermanent /index.php?id_category=13&controller=category https://www.direct-stores.com/
RedirectPermanent /index.php?id_category=14&controller=category https://www.direct-stores.com/
RedirectPermanent /index.php?id_category=15&controller=category https://www.direct-stores.com/
RedirectPermanent /index.php?id_category=16&controller=category https://www.direct-stores.com/
RedirectPermanent /index.php?id_category=17&controller=category https://www.direct-stores.com/
RedirectPermanent /index.php?id_category=18&controller=category https://www.direct-stores.com/
RedirectPermanent /index.php?id_category=19&controller=category https://www.direct-stores.com/
RedirectPermanent /index.php?id_category=20&controller=category https://www.direct-stores.com/
RedirectPermanent /index.php?id_category=21&controller=category https://www.direct-stores.com/
RedirectPermanent /index.php?id_category=22&controller=category https://www.direct-stores.com/
RedirectPermanent /index.php?id_category=23&controller=category https://www.direct-stores.com/
RedirectPermanent /index.php?id_category=24&controller=category https://www.direct-stores.com/
RedirectPermanent /index.php?id_category=25&controller=category https://www.direct-stores.com/
RedirectPermanent /index.php?id_category=26&controller=category https://www.direct-stores.com/
RedirectPermanent /index.php?id_category=27&controller=category https://www.direct-stores.com/
RedirectPermanent /index.php?id_category=28&controller=category https://www.direct-stores.com/
RedirectPermanent /index.php?id_category=29&controller=category https://www.direct-stores.com/
RedirectPermanent /index.php?id_product=18&controller=product https://www.direct-stores.com/
RedirectPermanent /index.php?mobile_theme_ok https://www.direct-stores.com/
RedirectPermanent /index.php?id_product=18&controller=product https://www.direct-stores.com/
RedirectPermanent /index.php?id_product=25&controller=product https://www.direct-stores.com/
RedirectPermanent /index.php?id_product=38&controller=product https://www.direct-stores.com/
RedirectPermanent /index.php?id_product=16&controller=product https://www.direct-stores.com/
RedirectPermanent /index.php?id_product=22&controller=product https://www.direct-stores.com/
RedirectPermanent /index.php?id_product=23&controller=product https://www.direct-stores.com/
RedirectPermanent /index.php?id_product=29&controller=product https://www.direct-stores.com/
RedirectPermanent /index.php?id_product=35&controller=product https://www.direct-stores.com/
RedirectPermanent /index.php?id_product=17&controller=product https://www.direct-stores.com/
RedirectPermanent /index.php?id_product=8&controller=product https://www.direct-stores.com/
RedirectPermanent /index.php?id_product=27&controller=product https://www.direct-stores.com/
RedirectPermanent /index.php?id_product=28&controller=product https://www.direct-stores.com/
RedirectPermanent /index.php?id_cms=6&controller=cms https://www.direct-stores.com/
RedirectPermanent /index.php?id_supplier=3&controller=supplier https://www.direct-stores.com/
 
Discussions similaires
Haut