.htaccess RewriteRule没有重定向

时间:2011-08-21 20:28:05

标签: apache .htaccess mod-rewrite apache2

如果文件夹包含2个字母(例如:zz),则执行文件(foofile)而不重定向到它。 foofile的文本输出将显示在浏览器上。

URI accessed by browser:http://www.mysite.com/zz/folder1/file1
File to be executed:    http://www.mysite.com/foofile?var1=zz&var2=/folder1/file1

这不起作用,因为浏览器显示404(未找到)错误:

RewriteCond %{REQUEST_URI} ^/../.*$
RewriteRule ^/(..)(/.*)$ /foofile?var1=$1&var2=$2

2 个答案:

答案 0 :(得分:1)

尝试删除RewriteRule中的前一个斜杠:

RewriteRule ^(..)(/.*)$ foofile?var1=$1&var2=$2

并且您的RewriteCond不是必需的。

答案 1 :(得分:0)

试试这个:

RewriteEngine On
RewriteRule ^/(..)(/.*)$ /foofile?var1=$1&var2=$2 

并检查apache的错误日志

您不需要RewriteCond,因为RewriteRule已经检查URL是否匹配。