2013-02-01 44 views
0

的CDN图像URL参数是重写图像URL使用htaccess的

https://cdn{sid}.example.com/{f1}/image_{id}.{ext} 

这是我如何将调用图像文件

<img src="image.php?cdn=42&f1=folder&id=1234&ext=jpg" alt="Hello" /> 

的代码的.htaccess我迄今发现

Options +FollowSymlinks 
RewriteEngine On 
RewriteRule ^image.php https://cdn42.example.com/folder/image_1234.jpg 

如何填充params(sid,f1,id等)到htaccess?在此先感谢...

+0

我不是downvoter(并没有看到任何downvotes),但我会怀疑这是因为你没有明确说明重写是在CDN上运行还是从服务器重定向到CDN,并且你没有指出你目前得到的结果......它根本没有工作,给出不正确的结果,或者你甚至尝试过吗?另外,如果你在这里搜索“query_string”,这是一个非常常见的问题。我提供了一个基于从服务器到CDN的假设的答案,但如果您在问题中提供了更多详细信息,这将有所帮助。 –

回答

1

若要从image.php?cdn=42&f1=folder&id=1234&ext=jpg重定向到https://cdn{sid}.example.com/{f1}/image_{id}.{ext},下面的规则应该工作。这是假设你正试图从你的服务器向CDN重定向,而不是试图重写的CDN本身:

RewriteCond %{QUERY_STRING} ^cdn=([^&]*)&f1=([^&]*)&id=([^&]*)&ext=(.*)$ 
RewriteRule ^image.php$ https://cdn%1.example.com/%2/image_%3.%4