我移植的图床程序Migs for 百度BAE提供下载了!

2013-01-16

已知BUG:小图片不能生成略缩图……

Migs是一款新浪SAE上运行的图床软件,可以非常方便地支持图片管理及批量上传等操作,并且用户界面做的也非常棒。于是就在半年前一个蛋疼的夜晚,我把Migs 移植到了百度BAE,作为个人图床使用。

与原版的Migs相比,我所移植的BAE版本做了一些性能上的优化,使用百度云存储(BCS)作为储存空间,增加了相册分类、剩余空间查看等功能。从一定意义上来讲,比原版更强大。

在运行了一段时间后,令我感到惊奇的是,好多网友都有这个需求,纷纷通过各种联系方式要求我提供BAE版Migs的下载。盛情难却,但苦于事务繁忙,所以一直拖到了现在。今天经过简单的整理,我总算可以把BAE版本的Migs提供给大家下载了。

但我需要说明的是,该软件曾出现漏洞,我的图床也曾被黑客网友“攻陷”。虽然我事后对一些页面做了防SQL注入处理,也使用URL REWRITE隐藏真实页面,但还是不保证漏洞都补上了。此外,还有个缺点,就是本人比较懒,相册分类管理页面没有做,需要进入数据库(mi_category表)进行相册分类的增删操作。

下面介绍下安装步骤:

第一步、创建一个应用,然后创建一个新版本。对创建的新版本选择“包上传更新”,将从百度网盘
http://pan.baidu.com/share/link?shareid=377273241&uk=4228204247,存在些问题,暂时撤下)下载到的Migs4BAE上传到服务器 。

第二步、选择“编辑”,然后使用BAE Code Editor打开config.php文件,作几个简单的更改:
1. 第15行,设置数据库名称;
2. 第29行,设置应用名称;
3. 第32行和第34行,设置百度云存储(BCS)的AK公钥和SK私钥。

Migs for 百度BAE

第三步、打开浏览器,键入你创建的应用网址(http://yourapp.duapp.com,事先记得将创建的新版本上线),进入安装界面。填写相关信息,安装完成!(貌似安装时使用中文会出现乱码,但没关系,安装完成后在后台改下就ok了)
Migs for 百度BAE安装界面

第四步、登陆后台,站点设置->storage设置,如果容量相关参数和事实相一致,OK,这就说明信息填写正确,否则你就要检查AK、SK、Storage名称是否都填写正确了。

Migs for 百度BAE配额查看

好了,就说这么多吧,还有不明白的,可以在本页留言,我尽量帮忙解决。(注意,默认相册不能删除!出于程序效率考虑,采用HTML上传方式时,上传完成后并不直接生成略缩图,而是等查看“所有图片”时才生成)Bucket一定要记得设置成公开读哦!

演示:http://1.mawenjian.duapp.com/

 


除非特殊说明,本博客文章均为原创,转载请以链接形式标明博文地址。

本文链接地址: 我移植的图床程序Migs for 百度BAE提供下载了!

分类:随笔文章 | 标签: |
    • BAE3.0和原来的2.0差别较大,这个程序只适用于原来的2.0(马上就下线了~~),3.0环境下一直木有测试过,所以原因不太清楚。我最近在忙别的事情,所以暂时恐怕没有时间搞这个,抱歉。你再尝试下别的程序吧,感谢信任!

  1. Pingback: 将百度BAE空间当成免费的国内音乐网盘和图片外链相册 – 【白驹免费网】

  2. 你好,博主,我安装后点击登录就出现乱码(“鐢ㄦ埛鍚嶆垨鑰呭瘑鐮侀敊璇�”仅仅出现这一串字符),这是什么情况??你的QQ是多少??

    • 你好,如果我没有猜错的话,是数据库的编码问题,到MySQL改一下编码格式基本就可以了。反正不是gbk改成unicode,就是unicode改成gbk。好长时间没弄了,所以记不太清了,抱歉。

  3. Pingback: Emlog for BAE修改教程,支持附件上传(云存储)等 | A ladder , a life .

  4. Pingback: 我移植的图床程序Migs for 百度BAE提供下载了! | 荒原

  5. 你好,我在数据库category表中添加了几个分类相册,但是在分类相册下上传超过10张图片的时候点击翻页那个箭头没有效果,点击完还是显示当前的这9张图片。我应该修改哪里?

      • 我看了下代码,感觉是在nav.page.php文件里查询图片个数的那个sql问题,那个sql查的是所有的图片,没有查询分类相册里的图片个数的sql,这样他查不出来我分类相册里有多少图片,不知道对不对

        • 应该不是,我记得有个先前的版本是翻页url少一个“/”的问题。
          没有判断个数,后果是出现无限的下一页,倒没有别的影响。

          • http://weixiaoworld.duapp.com/ 这是我的相册, 总共应该是上传了12张图片到 me 这个分类相册了。但是点翻页箭头一直只显示这9张, 但在首页和所有图片里就可以翻页,只有在分类相册下箭头不好使,在所有图片下翻页,第二页就不是这种列表形式的页面了。有时间的话还劳烦您看一下下 谢谢了

          • 多谢反馈,是rewrite的优先级出了问题,在代码版本右边的“高级”中选择“配置”,将url规则顺序调整为:
            url /gallery/(w+)/page/(d+) /?category=$1&page=$2
            url /photo/(d+) /photo.php?id=$1
            url /gallery/(w+) /?category=$1
            url /page/(d+) /?page=$1
            你应该是下载的比较早吧。用http://pan.baidu.com/share/link?shareid=3949697365&uk=4228204247替换下/include/photos.php文件,你用的可能是修改前的。这个修复了url中多一条"/"的BUG,生成略缩图效率也还高些,不过好像宽度小于200像素的生成略缩图会失败。请知悉。

          • 已经按照上面所写的修改了。。可是还是不好使。。不知道怎么搞的。 替换了photos.php的文件,但是url中还是多一个"/"修改完顺序之后,点下一页还是不好使。。

  6. 我安装成功了,可是关于怎么设置分类,怎么弄防盗链对玩我等小白来说,还是有难度,如果能给点教程,那是非常感激不尽的

    • 分类到数据库category表中添加即可,因为该操作很少使用,所以移植后我没有加上;防盗链百度BCS是有,但目前我还没有测试成功,待有时间继续测试。

  7. 昨天刚安装了这个图床。感觉很好用。但是我现在想把上传的图片都放在一个固定文件夹里而不是按照我上传的年月份来自己新建文件夹应该更改哪个文件的什么字段才可以实现呢,类似于云存储里的2013文件夹—>08文件夹

          • 恩,好的,谢谢你了。 太感谢了。

            还有关于防盗链的用法。 我按照你上面给出的地址去看了下,我用的是那个用php小程序来实现防盗链,我按照说明做完后,防盗链是好使了。 可是我再上自己的这个图床网站上的时候不显示图片了。缩略图和大图都不显示了。点击图片显示的是类似{"Error":{"code":"11","Message":"ACL:Can not find [sign] in querystring.","LogId":"3776254649"}}这样的代码。不知道应该怎么解决了。最后重新建的站,之前全部删了重弄的。想问下,用那个博主给的php小程序实现防盗链还需要注意什么问题么!~非常感谢

          • 我给了防盗链程序?不好意思,我忘了哈,刚才找了半天,也没有找到。要是有的话,应该也是别人写的吧,有问题请与原作者联系,我不是很清楚哈。

  8. 请问博主如何设置分类目录,还有想问一下,如何把原版migs for sae的生成缩略图像博主修改的for bae一样,改为指定宽度,自适应高度,原版的缩略图都是200*149的,而博主的都是200宽度,高度自适应。

    • 分类目录需要进入数据库添加记录;
      修改/includes/photos.php文件第134行,具体怎么设置请参见百度BAE Image服务,具体如何设置我记不太清楚了。

  9. 你好可以考虑把这个图传作为自己的博客图传吗?就是自己的wordpress,上穿图片的时候可以直接上床的百度bae的空间上,这样对于那些在美国空间上的博客有好处,避免了访问太慢的问题,呵呵,希望高手你能研究一下,现在有个wordpress的插件 Hacklog Remote Attachment 这个插件实现了远程上传图片,呵呵如果你有能力可以试着把插件改一改,直接变成傻瓜式的直接配置一下,什么配置百度的那个钥匙就可以上传,呵呵相信那些玩worpress的人会感谢你! 我就是一个理想主义者不要见怪哦!!呵呵希望高手你能去研究一下!

  10. 我这里显示。但是可以访问的。总容量0.00MB,已经使用0.03MB,还有-0.03MB可以使用,使用了0.00%的存储空间。
    lstuchuang.duapp.com

  11. 您好,有一个小问题:上传图片后缩略图不能生成是什么原因呢?(其他都没问题),按照前面的介绍更新了photos.php还是不行,网站地址:http://discuzhjz.duapp.com

      • 谢谢回答,使用英文名称后有些图片可以显示了,但部分仍然不显示,后来注意到是图片太小的原因。有没有什么方法可以避免太小的图片缩略图无法生成的情况呢?

        • 你好,非常感谢反馈!目测是图片宽度小于200像素导致略缩图生成失败的缘故。可以解决,但是因为百度这二货把getimagesize函数获取远程图片禁止了,所以不太好处理,短时间内不好解决,请见谅。

    • 两个问题一次回复了吧,上个留言就不显示了。
      一、好像是不可以吧,这个图床一般就是一个人使用的。当然,你要是在数据表中加条记录,应该也行,不过两个管理员没有主次的区别哦。
      二、防盗链的设置,见:http:// blog.gimhoy.com/archives/baidu-bcs-anti-stealing-link.html
      三、逻辑确实不太严密,因为生成略缩图时必须是图片才行,否则便会报错。暂时没有经历解决这个问题,还望见谅!

  12. 不知道算不算bug。
    在所有图片页面,点击下一页那个箭头的按钮,会链接到http://域名/list.phppage/2,这页面没有,显示404错误。
    望博主改进。

  13. Pingback: 百度BAE Image服务支持生成QR二维码——继Google Chart API之后的又一个选择 | 马文建的博客

  14. config.php设置好了。但是不知道哪里出错了,登陆提示用户名或密码错误,在数据库里也没有发现相关的表记录。,求指导。我把安装包、用户名密码一并发到你邮箱,谢谢了。

    • 数据库中没有表,不是没有安装,就是数据库名称、ak、sk错误。把本页发的photos.php文件替换掉,然后按步骤一步步来就行。
      不好意思,我没有时间一个个人指导,请原谅。

    • 因为一些历史原因,图床所在应用必须为上线的那一个,即可通过appname.duapp.com域名访问的那一个。别的按着教程配置就行了。

  15. BCS是什么?BAE应该是和SAE对应的吧?但是SAE不是能够防盗链吗?在那个migs for sae的程序里是允许防盗链的啊
    另外代码空间是什么意思?多谢回答
    再问一句,这个博客在移动设备上的显示效果真不错,能不能说说是怎么做到的?是用了WP插件?

    • Baidu Cloud Storage,百度云存储。BAE确实是和SAE相对应,但SAE的文件是存储到storage中的,storage对应于bcs云存储。准确来说是storage支持防盗链。
      代码空间就是指的SAE的存储空间,因为用于存放代码而不支持写操作而得名。
      靠插件+移动主题配合实现的。

      • 明白了
        刚才试了一下用BAE搭了个wordpress,但是我用的是原版的wordpress3.5.1,而不是wordpress on BAE,结果在创建wordpress安装时候数据库用户名密码和密码一直不对,虽然后来找了一份wordpress on BAE里的wp-config.php改了下数据库名和bucket名复制进去搞定了,但是BAE的mysql用户名和密码在哪里看得到?
        我用了如下php

        $ip = getenv(‘HTTP_BAE_ENV_ADDR_SQL_IP’);
        // 数据库对外开放的接口
        $port = getenv(‘HTTP_BAE_ENV_ADDR_SQL_PORT’);
        // 当前用户在BAE上的MYSQL用户名
        $username = getenv(‘HTTP_BAE_ENV_AK’);
        // 密码
        $password = getenv(‘HTTP_BAE_ENV_SK’);
        // 输出
        echo "ip: $ip <br/>port: $port <br/>username: $username <br/>password: $password <br>";

        但是输出的用户名和密码填进去还是不对…

  16. 你好,能帮我看看吗?
    我的也是显示{"Error":{"code":"11","Message":"ACL:Can not find [sign] in querystring.","LogId":"1472619291"}} 这类
    是不是公钥私钥没填对啊?

    • 先看不能显示的图片的URL,去云存储对应路径看是否存在相应的文件,如果存在,说明bucket没有设置成公开读;不存在,则说明公钥私钥没有填写对。

    • 你好,你原来碰到的问题可能是photos.php有BUG的缘故。
      Migs For BAE现在更新了下includes/photos.php文件,改为使用BAE图片API生成略缩图,解决了略缩图不能生成的问题,提高了效率,你有时间可以下载替换下(先原文件保留备份,避免出现问题)。includes/thumb-image.php也可以删除了。
      新文件地址:http://mawenjian.bcs.duapp.com/download/photos.php

  17. Pingback: 将百度BAE空间当成免费的国内音乐网盘和图片外链相册 | 楚河汉界

  18. 百度云空间配额就20gb,想问一下:能够实现和百度网盘进行联系吗?这样就不用费事的把资源传到百度网盘,然后创建公开链接了。

    • 我移植的这个程序其实是管理图片的,不能管理文件。我建议将图片这种传输比较频繁的放在云存储中,至于软件之类的大文件,建议还是放在网盘中,虽然麻烦,但是经济。一旦云存储将来没有免费配额了,费用就高了。
      当然,通过百度的API,应该可以实现程序同百度网盘的对接,但是通过服务器中转上传大文件,应该不明智吧?
      不知道是否明确回答了你的问题。还有,云存储一旦不够用了,可以再申请配额,据说最高2T,绝对足够了。