.htaccess的一些错误不知道什么是错的

时间:2012-05-19 15:37:50

标签: apache mod-rewrite url-rewriting

嘿伙计们,我不知道我在这里做错了什么。

www.example.com/data/stuff1/stuff2/stuff3

www.example.com/anything.php?par1=data&&par2=stuff1/stuff2/stuff3

这就是我写的。请帮我弄清楚我的错误。 PS。我对.htaccess很新。

谢谢!

 RewriteEngine On    # Turn on the rewriting engine
 #RewriteCond %{REQUEST_URI} !www\.a3k\.in
 RewriteRule     /([^/]+)/?(.*)$ /anything.php?api=$1&&data=$2    [NC,L] 

1 个答案:

答案 0 :(得分:2)

RewriteRule中的路径不包含前面的斜杠,并且因为您没有添加^来标记路径的开头,这可能导致了错误的行为。所以试试这个:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]+)/(.*)$ anything.php?api=$1&data=$2 [NC,L]

此外,我添加了RewriteCond %{REQUEST_FILENAME}以确保不会重写实际现有文件的网址。