diff options
author | Bernhard Posselt <dev@bernhard-posselt.com> | 2014-12-17 09:01:54 +0100 |
---|---|---|
committer | Bernhard Posselt <dev@bernhard-posselt.com> | 2014-12-17 09:02:13 +0100 |
commit | 867cb7dbf960dc0cfbf7e59d656d1337bb59c526 (patch) | |
tree | 5bbdf1eef51cd3747f55ef2c524364f9cd3bf029 /vendor/fguillot/picofeed/docs/image-proxy.markdown | |
parent | a813b535eeb517e0ccd69a90d0058756014a1e01 (diff) |
update picofeed, fix #695
Diffstat (limited to 'vendor/fguillot/picofeed/docs/image-proxy.markdown')
-rw-r--r-- | vendor/fguillot/picofeed/docs/image-proxy.markdown | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/vendor/fguillot/picofeed/docs/image-proxy.markdown b/vendor/fguillot/picofeed/docs/image-proxy.markdown new file mode 100644 index 000000000..74e10d0c6 --- /dev/null +++ b/vendor/fguillot/picofeed/docs/image-proxy.markdown @@ -0,0 +1,66 @@ +Image Proxy +=========== + +To prevent mixed content warnings on SSL pages served from your RSS reader you might want to use an assets proxy. + +Images url will be rewritten to be downloaded through the proxy. + +Example: + +```html +<img src="http://example.org/image.png"/> +``` + +Can be rewritten like that: + +```html +<img src="http://myproxy.example.org/?url=http%3A%2F%2Fexample.org%2Fimage.png"/> +``` + +Currently this feature is only compatible with images. + +There is several open source SSL image proxy available like [Camo](https://github.com/atmos/camo). +You can also write your own proxy. + +Usage +----- + +There two different ways to use this feature, define a proxy url or a callback. + +### Define a proxy url + +A proxy url must be defined with a placeholder `%s`. +The placeholder will be replaced by the image source urlencoded. + +```php +$config = new Config; +$config->setFilterImageProxyUrl('http://myproxy.example.org/?url=%s'); +``` + +Will rewrite the image source like that: + +```html +<img src="http://myproxy.example.org/?url=http%3A%2F%2Fexample.org%2Fimage.png"/> +``` + +### Define a callback + +Your callback will be called each time an image url need to be rewritten. +The first argument is the original image url and your function must returns the new image url. + +Here an example if your proxy need a shared secret key: + +```php +$config = new Config; + +$config->setFilterImageProxyCallback(function ($image_url) { + $key = hash_hmac('sha1', $image_url, 'secret'); + return 'https://mypublicproxy/'.$key.'/'.urlencode($image_url); +}); +``` + +Will generate an image url like that: + +```html +<img src="https://mypublicproxy/4924964043f3119b3cf2b07b1922d491bcc20092/http%3A%2F%2Ffoo%2Fimage.png"/> +``` |