2010-07-08 80 views
0

他人。Apache rewriteCond Rails多域设置缓存

我有一个Rails应用程序运行多个站点,它有一个缓存,看起来像这样: TMP /缓存/ adomain.com /缓存文件

不,这不是由阿帕奇拿起(明明)我试图在我的httpd.conf中设置它为 。但我无法实现它的工作。

这是我试过的东西:
< VirtualHost *:80 >
PassengerMaxPoolSize 20
PassengerPoolIdleTime 0
DocumentRoot /mnt/app/current/public
RewriteEngine On
RewriteCond /mnt/app/current/tmp/cache%{HTTP_HOST}%{REQUEST_URI} -f
< /VirtualHost>
但它似乎并没有工作! (当然我重新启动apache:apache2ctl restart) 我搜索了很多!但我找不到解决办法。

回答

0

在我看来,你错过了RewriteCond之后的RewriteRule声明。

RewriteCond提供了请求的条件匹配,但是没有规则就不会采取行动来做某件事。

可能更改为以下,你的路可能会有所不同:

RewriteCond /mnt/app/current/tmp/cache%{HTTP_HOST}%{REQUEST_URI} -f 
RewriteRule ^/[^.]+$ /YOUR_CACHE_URI/%{REQUEST_URI} [QSA,L]