【发布时间】:2012-09-27 13:57:33
【问题描述】:
我有一个包含此代码的“.htaccess”文件:
(它应该重定向诸如“P7-product_number_7”之类的名称)
RewriteEngine On
RewriteBase /
# if:
RewriteCond %{DOCUMENT_ROOT}/cache%{REQUEST_URI}.html -f
# then:
RewriteRule ([A-z])([0-9]+)-([^/]*)?$ /cache%{REQUEST_URI}.html [B,L]
# else:
RewriteRule ([A-z])([0-9]+)-([^/]*)?$ index.php?type=$1&id=$2&label=$3 [B,L]
检查文件是否存在(在“缓存”目录中)工作正常,但重定向不起作用。
为什么?
我曾尝试使用“RewriteRule ^(.*)$ /cache/$1.html [L]”代替第一个 RewriteRule,但也没有成功。
(如果 HTML 文件不存在(在 /cache/ 中)的重定向工作正常,'.htaccess' 和 'cache/' 目录在 '/var/www' 目录中,所以 %{REQUEST_URI} 是 "/P7 -product_number_7")
【问题讨论】:
标签: .htaccess mod-rewrite url-rewriting