Gravity 传图至 Flickr 与博客引用
Twitter的优秀客户端Gravity所支持的几个图片服务都已经被GFW,只有Flickr还可以使用了。Flickr 目前可以访问,但是唯独图片不能显示。之前有想过搭建图床,以邀请制供推友发图。却因为没有合适的开源程序而作罢。
用Gravity将手机拍的照片传至Flickr的确是个不错的主意。嘀咕网的手机拍照上传的意义也是记录生活分享点滴,何况还有Flickr强大的照片管理功能。我目前发现的唯一问题是,Gravity上传的图片Exif信息会丢失。
Gravity 上传至 Flickr
先访问 http://mobileways.de/flickr ,在Flickr中授权给Gravity,并获得 Flickr Code。 在 Gravity 的图片功能中,Options->Setting,输入 Flickr Code 即可。
选一张照片,在下拉的选项中单击 flickr ,很快就上传完毕了。如果嫌图片质量不高,可以在 Setting 中调整。
博客引用 Flickr 图片
相信一定有 WordPress 的 Flickr 管理软件,配合一些将外部图片下载到本地的插件,就可以做到墙内用户无障碍浏览。但我没发现在 typecho 中的相关的插件。所以索性弄了个简单的办法,适用于服务器在国外的同学们。
保存以下内容为 index.php:
<?php define('STATIC_URL','http://farm5.static.flickr.com/'); define('REAL_URL','http://photo.dallas.lu/'); //编辑此处改为你的空间域名 if ( curl_download( STATIC_URL.$_GET['file'],$_GET['file'] ) ){ header("Location: ".REAL_URL.$_GET['file']); exit; }else{ header("HTTP/1.0 404 Not Found"); exit; } function curl_download($remote, $local) { $cp = curl_init($remote); $fp = create_file($local, "w"); curl_setopt($cp, CURLOPT_FILE, $fp); curl_setopt($cp, CURLOPT_HEADER, 0); curl_setopt($cp, CURLOPT_FOLLOWLOCATION,1); curl_exec($cp); $httpinfo= curl_getinfo($cp); if ( $error = curl_error($cp) ||$httpinfo['http_code'] != 200 ){ curl_close($cp); fclose($fp); @unlink ($local); return false; }else{ curl_close($cp); fclose($fp); return true; } } function create_file( $file_name,$w){ $dir_name=dirname($file_name); if(!file_exists($dir_name)){ mkdir($dir_name); } if (file_exists($file_name)){ @unlink ($file_name); } return fopen($file_name, $w); }
然后加入URL重写规则到 .htaccess 文件:
RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L]
嗯,然后把这个index.php 和 .htaccess 发布到你的php空间中即可。在flickr中获取图片外链地址时,将 farm*.static.flickr.com 替换成你的域名就行啦。
4 replies on “Gravity 传图至 Flickr 与博客引用”
最保险的还是放在自己服务器上,站有图片在,站亡图片亡,哈哈
这个脚本就是把 flickr 上的图片下载到自己服务器上的。不过,不是原始图片了。
路过。
很受益