2010-06-10 132 views
1

的中間添加一個字符串使用的.htaccess重寫規則,我需要添加「Q =」上的任何URL的含有單詞「imagecache」的.htaccess重寫規則,在URL

因此該路徑前如果網址是:

http://mysite.com/sites/default/files/imagecache/myimage.jpg 

...那麼它真的會嘗試:

http://mysite.com/?q=sites/default/files/imagecache/myimage.jpg 

但是,如果URL包含纔會發生 「imagecache。」否則,它不會重寫。

此外,只有在/sites/default/files/imagecache/myimage.jpg還不是現有的圖像文件時纔會發生這種情況。我相信我可以這樣做使用:

RewriteCond %{REQUEST_FILENAME} !-f 

...對不對?這只是我無法弄清楚的第一部分。

+0

不Drupal的已經做到這一點?重寫部分,我的意思是。 – Kevin 2010-06-10 00:13:39

+0

是的,但我有一個奇怪的問題,其中ImageCache的URL不是已經生成的圖像返回404而不是生成圖像...大概是由於服務器上發生了一些緩存事情。所以這是我試圖解決這個問題。 – 2010-06-10 00:21:09

+0

這是在Imagecache可以生成圖像之前處理請求的地方嗎? – Kevin 2010-06-10 00:26:19

回答

1

像這樣的事情?:

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^(.*imagecache.*)$ /?q=$1 [L,QSA] 
0
RewriteRule ^mysite.com/(.*)/imagecache/(.*)$ mysite.com/?q=$1/imagecache/$2