2013-04-07 57 views
1

我使用Cloudflare免費CDN,因爲我需要在某些區域使用https,所以我無法在主域上激活它。因此,經過一些谷歌研究,我發現我可以將選定的文件格式替換爲url(作爲鏡像/ cdn),但無法使其工作。.htaccess - 將文件url替換爲cdn url

所以基本上這就是我想要做的,當人/網站/腳本請求或訪問maindomain.com/img.png重定向到cdn.cdn.com/img.png(其中「cdn.cdn.com 「與插件域設置在同一文件夾中,並加載相同的htaccess),並自動提供img.png而不作任何代碼更改。這是因爲cloudflare允許通過CNAME記錄緩存內容,所以我想自動將maindomain.com替換爲CDN CNAME記錄(cdn.cdn.com)。另外,我想知道如何使它適用於單個文件夾。

這是我測試

<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteCond %{HTTP_HOST} ^maindomain\.com$ [OR] 
RewriteCond %{HTTP_HOST} ^www\.maindomain\.com$ 
#if you want to apply to a single folder 
RewriteCond ^htatest\ 
RewriteCond $1 "\.(jpg|png)$" [NC] 
RewriteRule ^(.*) http://cdn.cdn.com/$1 [L] 
</IfModule> 

回答

2

這個替換您的規則一個代碼:

Options +FollowSymLinks -MultiViews 
# Turn mod_rewrite on 
RewriteEngine On 
RewriteBase/

RewriteCond %{HTTP_HOST} ^(www\.)?maindomain\.com$ [NC] 
RewriteRule ^(htatest/.+?\.(?:jpg|png))$ http://cdn.cdn.com/$1 [L,R=301,NC]