2010-10-31 7 views
0

j'ai ce fichier qui se trouve sur le dossier racine appelé sumbit.phpproblème mod_rewrite, avec accès aux fichiers?

et quand j'acesss une page comme pour exmaple

http://www.example.com/viewtopic.php?topic=14 

la nouvelle URL est

http://www.example.com/topic/14 

sur Firebug son dire son accès http://www.example.co.uk/topic/submit.php, lorsque son intention d'accéder http://www.example.co.uk/submit.php

mon code .htaccess

RewriteEngine On 

RewriteRule ^user/([^/]*)$ /viewprofile.php?user=$1 [L] 
RewriteRule ^topic/([^/]*)$ /viewtopic.php?topic=$1 [L] 

Je ne semble pas voir quel est le problème, p.s. sumibit.php provient d'un formulaire submit action

Répondre

1

Cela se produit car le lien vers submit.php dans votre code HTML utilise des chemins relatifs. Les chemins relatifs dépendent du répertoire dans lequel vous vous trouvez actuellement. Ainsi, lorsque vous ajoutez des barres obliques à votre URL, tout devient foireux.

Vous devez corriger votre code HTML pour utiliser des chemins absolus (/submit.php). Si ce n'est pas possible, écrivez une nouvelle règle de réécriture qui mappera ^.*/submit.php$ au chemin correct.

+0

donc je dois faire cette règle de réécriture pour tous les fichiers – getaway

+0

@getaway Il suffit d'ajouter 'RewriteRule^*/submit.php $ /submit.php [L]' à votre fichier .htaccess.. Ou vous pouvez traquer tous les chemins relatifs et réparer chacun d'eux. – kijin

0

Ceci est un vieux fil Je sais, mais ... Je pense que ce que l'utilisateur (OP) était après était adresse réelle cloaking ../clonage ... pour cacher le chemin original? ...

alors:

Options +FollowSymLinks 
RewriteEngine on 
RewriteBase/
#my url is in the form of domain.com/photograph/GALLERY/IMAGE NUMBER 
RewriteRule ^photograph/(.*)/(.*)$ /albums/index.php?op=large&gallery=$1&curImage=$2&rd=ht [QSA,L] 
Questions connexes