2010-11-12 9 views
1

J'essaie de faire une redirection 301 avec mod_rewrite sur un script PHP à partir d'un répertoire supérieur sur mon site. L'URL que je veux rediriger ressemble à ceci (évidemment la chaîne de requête est toujours différente).rediriger le script PHP avec .htaccess du dossier supérieur

http://www.foo.com/bar/script.php?variable1=bar&variable2=foo 

Et je veux rediriger script.php? au levier inférieur sur mon site, comme ceci:

http://www.foo.com/script.php?variable1=bar&variaable2=foo 

Quelqu'un peut-il vous aider?

Merci,

Matt

Répondre

1

Pour une config vhost (que je préfère un htaccess), il serait

RewriteEngine On 
    RewriteCond %{REQUEST_URI} ^/bar/script.php 
    RewriteRule $ /index.php [R=301,NC] 

pour htaccess il devrait être

RewriteEngine On 
    RewriteBase/
    RewriteCond %{REQUEST_URI} ^/bar/script.php 
    RewriteRule $ /index.php [R=301,NC] 
+0

Il ne s'agit pas d'une redirection 301. Ce n'est même pas une redirection. –

+0

désolé, mal lu la question, attendez une seconde – Hannes

+0

merci beaucoup pour votre réponse, a travaillé un charme :) Le seul changement nécessaire était sur la ligne de fond, j'ai aussi changé cela 'RewriteRule $ /script.php [R = 301, NC ] 'Cheers, Matt – Matt

0

Vous pourriez essayer quelque chose comme ceci:

RewriteEngine On 
RewriteRule ^bar/script\.php$ http://%{HTTP_HOST}/script.php [QSA,L,R=301] 
+0

Merci pour la réponse, mais je ne pouvais pas obtenir ce travail trop. – Matt

+0

Pour les records: Je viens de le tester et ça marche pour moi: -? Peu importe, je suis content que tu l'aies quand même. –

Questions connexes