2010-10-31 117 views
0

我有这个文件,是关于所谓的sumbit.phpmod_rewrite问题,访问文件?

,并在根文件夹时,我acesss一个页面像这样〔实施例

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

则新URL

http://www.example.com/topic/14 
上萤火

它说其访问http://www.example.co.uk/topic/submit.php,当其意图访问http://www.example.co.uk/submit.php

我的.htaccess代码

RewriteEngine On 

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

我似乎不知道问题是什么,p.s. sumibit.php来自表单提交动作

回答

1

发生这种情况是因为HTML中的submit.php链接正在使用相对路径。相对路径取决于您当前使用的目录。因此,当您将URL添加到斜杠时,它会全部搞砸。

您应该修复您的HTML以使用绝对路径(/submit.php)。如果这是不可能的,写一个新的重写规则,将^.*/submit.php$映射到正确的路径。

+0

,所以我需要做的是重写规则对于所有文件 – getaway 2010-10-31 05:32:49

+0

@getaway只需添加'重写规则^ */submit.php $ /submit.php [L]'你的.htaccess文件。或者你可以搜寻所有相关路径并修复它们中的每一个。 – kijin 2010-10-31 05:37:01

0

这是一个古老的线程我知道,但是...我认为用户(OP)是很实际的地址伪装.. /克隆...隐藏原来的路径后?...

所以:

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]