2010-07-08 77 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]