Php mod_rewrite:重定向到缓存或脚本

Php mod_rewrite:重定向到缓存或脚本,php,apache,caching,mod-rewrite,rewrite,Php,Apache,Caching,Mod Rewrite,Rewrite,对于我正在开发的“缓存”解决方案,我的mod_rewrite配置有一些问题。我有一个名为“cache”的目录,其中包含已编译的html文件。我还有一个index.php文件,用于处理所有请求 现在,所有请求都被重写到index.php文件,如:“/articles”=>index.php?q=articles 但是现在我想将它重写为“cache/articles/index.html”(如果存在),否则就返回并重写为index.php脚本 我把重写工作搞得一团糟有一段时间了,我知道,但我无法让它

对于我正在开发的“缓存”解决方案,我的mod_rewrite配置有一些问题。我有一个名为“cache”的目录,其中包含已编译的html文件。我还有一个index.php文件,用于处理所有请求

现在,所有请求都被重写到index.php文件,如:“/articles”=>index.php?q=articles

但是现在我想将它重写为“cache/articles/index.html”(如果存在),否则就返回并重写为index.php脚本

我把重写工作搞得一团糟有一段时间了,我知道,但我无法让它工作。重写代码现在看起来像这样(缓存没有任何内容):


重新启动发动机
重写cond%{REQUEST_FILENAME}-F
重写cond%{REQUEST_FILENAME}-D
重写cond%{REQUEST_URI}=/图标文件
重写规则^(.*)$index.php?q=$1[L,QSA]

提前感谢:)

尝试将以下内容添加到站点根目录中的
.htaccess
文件中

RewriteEngine on
RewriteBase / 

#if the index.html exists in the cache
RewriteCond %{DOCUMENT_ROOT}/cache%{REQUEST_URI}/index.html -f [NC] 
#then display it
RewriteRule ^ cache%{REQUEST_URI}/index.html [L]

#other existing rules go here

你犯了什么错误?你能解释一下“不工作”吗?Apache错误日志中有什么内容吗?您可以发布您为缓存尝试的.htaccess代码吗?您在添加缓存时的具体问题是什么?在哪一点上你还不知道?您的缓存使用的是哪个请求url文件名sheme?可能与感谢重复,这让我很开心!:)
RewriteEngine on
RewriteBase / 

#if the index.html exists in the cache
RewriteCond %{DOCUMENT_ROOT}/cache%{REQUEST_URI}/index.html -f [NC] 
#then display it
RewriteRule ^ cache%{REQUEST_URI}/index.html [L]

#other existing rules go here