2008年4月21日星期一

通过手机免费上传图片到Flickr

  现在的手机大多数都能拍摄出不错的照片,人们外出旅游使用手机可以方便的随时随地拍摄照片,而且很多都能拍出高质量的照片。所以通过手机将拍摄的照片上传到网络相册是一个很有用的功能。今天我要是能早点将照片上传到Flickr,也不至于被人删除掉找不到了。

  中国移动给出的上传方案通常是通过彩信(MMS)的方式上传,彩信是要收费的,上传大量照片则费用会比较高,对于已经开通了GPRS功能的中国移动用户,其实可以通过另外的方法上传图片。

  对于Flickr来说,目前有两个主要的手机上传图片的方法:

  1、通过客户端软件上传,例如ShoZu这个软件,可以支持用户通过手机上传图片到Flickr。不过这个软件支持的手机种类有限。

  2、通过Flickr的手机版上传,通过手机访问http://m.flickr.com,登录之后就可以在里面上传照片了,上传之后还可以设置照片是公开还是私密的。这种方法支持的手机较多,只要手机支持Java,都可以使用这种方法上传。不足之处是对于有的手机只能访问某几个指定目录。

  除了Flickr之外,国内的Yupoo和巴巴变都支持手机上传照片。

  最后需要注意,这种上传的方法虽然是免费的,但是GPRS包月的流量是有限制的,上传时候请注意一下流量是否足够,以免付出额外的流量费用。

2008年4月20日星期日

国外虚拟主机选购指南

  国外的虚拟主机和国内的相比有不少的优点,例如不用去备案,价格相对低廉,稳定性也好,虽然从国内访问速度稍微慢一些,但的确是一个低成本创建一个网站的好方案。国外的空间基本上是基于Linux+Apache+MySQL+Php的,由于PHP已经事实上统治了网站设计语言的标准,因此国内人也基本可以放弃继续使用ASP了。

  然而,国外的虚拟主机依然是鱼龙混杂,甚至有一些很著名的虚拟主机供应商也在搞猫腻,我购买国外虚拟主机已经有很长一段时间了,我的月光博客英文网站在使用国外虚拟主机的这段时间也遇到了种种以前没想到的问题,因此我就再次总结一些选购和识别国外优秀虚拟主机的方法,供大家参考。

  虚拟主机的原理,就是把一台真正的主机分成许多“ 虚拟”的主机,它们之间完全独立,使得多个用户共享一台真实主机的资源,节省用户的硬件费用和流量费用。通常虚拟主机的价格都是每月5至10美元左右,非常低廉,虚拟主机商为了从有限的服务器和网络资源中获得最大的利益,那么就必须要侵害了用户的利益,过度销售(Overselling)虚拟主机,因此,只有识别出过度销售(Overselling)的虚拟主机,才能选择到一个稳定而优秀的虚拟主机。

  如何识别出过度销售(Overselling)的虚拟主机,我这里总结了几个要点:

  容量与流量参数的诡计

  绝大多Overselling的虚拟主机商都在玩一个数字游戏,每月不到10美元,就可以购买超大容量和流量的主机,其容量和流量参数往往比租用一台服务器的流量还要大,举个例子,使用独立服务器的月光博客目前的月流量只有450G,而几乎所有Overselling的虚拟主机都声称能提供每月超过1000G的流量,当然这个承诺是永远无法兑现的,如果你真有一个每月1000G流量的网站,那么绝对不能考虑这些Overselling的虚拟主机,因为在你还没有使用到百分之一左右的流量时,通常这些虚拟主机商都会以使用了过多资源为由而终止你的服务,受骗的用户实际上并没有认识到巨大的空间和流量与使用的CPU和内存资源是两回事,如果你使用了很多的流量,主机商不会以使用过多流量而是以使用超额CPU和内存资源为由终止服务。

  按年支付的风险

  几乎所有的Overselling的虚拟主机的付款方式都是以按年支付为准则的。要么他们只支持按年付款,不支持按月付款,或者按月付款的价格和按年付款的价格相差巨大,迫使用户选择按年支付。为什么这些主机商要这么做呢?因为他们的限制CPU和内存的方式肯定会引起用户对购买的虚拟主机不满意,用户肯定会终止付费重新选择主机商。如果按月支付,用户发现这个主机速度很慢或者服务不好,那下个月就可以中止支付而去选择其他主机,对于个人来说风险较小而没有什么损失。如果是按年付费通常将会得不到退款,损失了一年的费用。虚拟主机商通过这种方法迫使用户多支出了一笔费用,赚取了黑心钱。而通常不搞Overselling的正规而自信的主机商都乐于提供按月支付方式,而且按月支付的价格和按年支付不会相差很大。

  推荐回扣奖励

  搞Overselling的虚拟主机为了扩大用户群,会采用回扣奖励或现金返还的形式进行促销,即用户推荐一个新的主机注册用户,推荐人可以得到金额奖励或者回扣,类似于传销的形式。搞这类活动的基本上都属于Overselling的虚拟主机。他们确实通过这种形式获得了大量用户,但其主机质量却会随着用户的增加而降低。

  可绑定的域名数量

  搞Overselling的虚拟主机提供几乎不受限制的域名绑定,一个用户可以在虚拟主机上绑定无数的网站,很多人喜欢这种功能。但是我们要知道,一台服务器的资源是有限的,绑定的网站越多,耗费的资源就越大,这样的结果是网站的响应速度和稳定性就降低,经常出现500错误,例如我购买的某个虚拟主机,上面竟然绑定了一千多个FTP用户,这样的虚拟主机能好用吗?因此,正规的虚拟主机商提供1、2个域名绑定其实就能保证大多数用户的利益了。

  以上就是我总结的一些识别出过度销售(Overselling)的虚拟主机的技巧,如果你使用的WordPress或者论坛有可能达到每天1万IP访问,那么最好不要选择Overseelling的虚拟主机,因为他们的CPU限制会导致网站访问极不稳定。当然,如果你有很多小网站,或者网站全部是HTML格式,很少使用PHP和MySQL,那也可以选择Overselling的虚拟主机,因为纯HTML的页面消耗CPU很小,不会产生很大负荷。否则的话,最好选择限制流量而非限制CPU的虚拟主机。

  我建议的非Overselling的虚拟主机,通常价格为5到10美元,限制流量为每月100G以下,绑定1-2个域名。这种参数的虚拟主机通常是不会限制CPU的,适合那些每天访问量超过1万IP的动态PHP网站的选择。

2008年4月19日星期六

Alexa更新网站排名算法

  据Alexa报道,4月17日,Alexa宣布自己的算法进行了更改,很多互联网网站的排名出现了不同程度变化,新的数据统计将不再完全依赖Alexa工具条所反馈的流量数据,而会同时参考“多个数据来源”,以提高其全球网站流量排名的权威性。

  原有的算法主要依赖Alexa工具条反馈的数据,由于Alexa工具条的安装量很小,使得Alexa的流量排名越来越不准确,特别对于中国的大部分网站来说,原有的Alexa已经渐渐失去了参考价值,因此Alexa不得不修改自己的算法,参考了“其他数据来源”。

  其他的数据来源,我觉得Google可能更有权威度一些,Google工具栏的装机量非常庞大,同时Google还有Google Analytics(分析)和FeedBurner这样的精确级流量统计工具,如果一些排名都由Google完成,其准确度可能比Alexa还要高一些。

  我的博客的Alexa为两万多,好像有所提高,据说大部分中文网站的排名也有提高,英文网站好像有降低的,例如Problogger从3xxx降低到12917,JohnChow由5xxx降低到17088,莫非这些博客大拿们以前在刷Alexa流量?

  附录:Alexa关于更新算法的说明

  原文地址:http://www.alexa.com/site/company/announcement (CNET中国翻译

  最近几个月,我们不断从ALEXA用户听到这样的反馈:研究ALEXA工具条以外的用户的互联网行为变得越来越重要。对此,我们询问,并接受!

  我们倾听您的建议,我们相信我们的新的排名系统会更加符合您的要求。我们现在从各种各样的渠道来收集数据,以便能向您展示一个反应大多数互联网用户意志的更好的排名体系。

  您们给予我们的更多的其他意见,我们将会在以后努力实现。现在我们还不能告诉你们更多秘密,但是,在未来几周,我们产品的一些新的特点将会陆续呈现在您眼前。

  下面是一些问题和我们的回答:

  问:我的网站排名变了。以前的数据错了吗?

  答:你的网站之前的数据没有错,只是变了而已。安装ALEXA工具条的用户,在上网兴趣和习惯上可能和其他的一般网民在许多方面有所不同,我们只不过是把这种“不同”,在我们的网站上表现出来了。绝大多数网站的排名都不会受到这种“不同”的影响,同时我们也会努力使我们的新的排名机制更好地反应真实。

  新的排名机制将会更好地反应绝大多数网民的上网兴趣和习惯。

  问:为什么图表当中1年和3年的选项不见了?我只能看9个月的历史数据。

  我们正在重新算数据,将会在最近几周陆续将历史数据加进来,我们很快就会把最近几年的数据恢复。对于由此造成的不便,我们深表歉意。

  问:你们还会再次改变排名吗?

  答:我们一直都在努力确保我们提供的数据是最有用的数据。我们将会继续调整我们的算法,但是我们不能预测是否会发生任何大的数据变化。如果你发现有错误,请及时通知我们。

  问:我更喜欢以前的排名。哪些排名还能看到吗?

  答:我们也喜欢以前的排名。但是,我们是根据来自像您这样的许许多多的用户的反馈,来调整和开发我们新的系统的,既然已经完成了,我们更喜欢新的排名。我们也希望你会喜欢。

  我们认为同一时间有两套排名体系会让人混淆的。所以,我们取消了旧的排名体系。

  问:你们想知道我对此事的看法吗?

  答:当然!最近几个月以来,我们一直在收集各方的意见和建议,我们还将乐意倾听更多的声音。如果您对我们的调整有任何想法或者意见的话,请与我们分享。

2008年4月18日星期五

新版Google Earth发布并提供下载

  Google发布了最新版的Google Earth 4.3,和上一个版本4.2相对比,最新的Google Earth版本具有一些新的功能,包括昼夜模式,显示本地时间和日出日落,新的街景模式,卫星地图的日期,更快的三维模式,Mac版本支持Flash等等。

  昼夜灯光

  新的昼夜模式产生特殊的灯光效果,一旦打开实时日光后就可以看到现在太阳的位置,你可以使用时间滚动条来改变太阳照射过程的一整天,你就可以看到太阳从日出到日落的样子,注意阳光会影响大气的效果,你实际看到的颜色变化是垂直的,云层也会变化,这里有一些阳光照射效果图片:

太空上看到的昼/夜效果

太空上看到的昼/夜效果

丹佛的三维建筑物上的日出效果

丹佛的三维建筑物上的日出效果

  预计在未来的日子里,Google Earth上还会出现一些非常漂亮的画面显示和一些很酷的照射效果。

  街景模式

  Google Maps早已经有了街景,现在Google Earth也有了,打开左边的街景(Street View)图层,即可看到街景,你可以变换镜头和距离,就像在街头环顾四周一样。这里有几个球状的街景画面。

Google Earth街景模式

Google Earth街景模式

  更快的三维模型

  Google优化和改进了三维建筑物的渲染性能,先加载低分辨率模型,再加载高分辨率模型,使得三维建筑加载更快了,人们可以逐步看到更为清晰的建筑物纹理细节。很多大城市具有非常真实的三维建筑物模型,这里是旧金山的三维建筑物截图。

Google Earth 4.3中的旧金山

Google Earth 4.3中的旧金山

  图像日期

  当使用鼠标进行缩放的时候,有时候你会看到状态栏底部会出现一个更新日期,就像下面一样,当像加上了更新日期后,我们就可以很方便地了解卫星地图的时效性。

图像日期

  另外一个重要的新特点是,Mac版本的Google Earth可以支持Flash了,这样Mac的用户就可以看到Google Earth上面的那些YouTube视频了。

  新版Google Earth下载地址:http://earth.google.com/download-earth.html

  英文原文:Google Earth 4.3 First Impressions and Screenshots

  中文翻译:William Long

2008年4月17日星期四

WP-PostViews的静态JavaScript版更新

  前段时间我曾经写了一个WP-PostViews的静态JavaScript版插件,用于在静态化WordPress下以JavaScript的方式提供文章计数器,当时写的比较匆忙,有不少问题,今天晚上终于抽出几个小时,将WP-PostViews的静态JavaScript版进行了一番大的修改,修正了以前的一些主要问题,最新的版本目前看来我比较满意。

  以前这个WP-PostViews的静态JavaScript插件存在的问题是效率问题,由于不是使用Ajax调用计数器,而且JavaScript代码是放在页面的中间,于是装载文章的时候会导致页面停顿一下。今天我参考了Z-Blog的一些相关技巧,使用动态调用JavaScript的方法,在页面的底部再调用计数器的JavaScript,页面终于不停顿了运行一下,效果和Ajax的几乎差不多,感觉还可以。

  这个修改版的插件优点:

  1、小巧玲珑,对于原来的插件修改量很小,只修改了一个文件,大部分修改增加到了一个独立的新增文件wp-counter.php。

  2、内存占用小,wp-counter.php这个文件代码很少,不会占用大量内存,对于虚拟主机限制PHP内存的用户来说很有用。

  3、效率高,没有建立额外的http连接,不会产生更多负荷。

  不足之处:

  1、只支持页面计数,不支持首页和目录页计数。

  2、对所有用户均计数。

  安装说明:

  1. 下载压缩包,然后解压缩文件。

  2. 将postviews目录放到wp-contentplugins目录下。

  3. 将wp-counter.php放在WordPress的根目录下。

  4. 在插件管理里面激活WP-PostViews插件。

  安装重点说明一下,wp-counter.php要放在WordPress的根目录下,不是放在插件目录下,否则会报错。以前用过我这个插件的用户建议立刻升级。

  下载:点这里下载最新的基于JavaScript版本的WP-PostViews。

2008年4月16日星期三

在Windows Server下集成Apache、Tomcat和IIS

  我在《Perl、PHP、ASP、JSP技术比较》一文中曾经对四种流行的网站设计语言进行了评测和对比,常言道鱼与熊掌皆我所欲,两者不可兼得,那么有没有一种方法,可以做到鱼与熊掌兼得,同时支持这四种语言的Web服务器呢,今天我就介绍一下基于Windows Server 2003的同时在一个80端口支持这四种语言的方法。

  我们的策略是:安装三个Web服务器,Apache负责支持perl和php,IIS负责支持asp,Tomcat负责支持jsp,通过Apache的proxy_module将三个服务器集成到一个80端口。

  安装的方法是,先安装IIS、ApacheTomcat,配置Apache使用80端口,Tomcat使用8080端口,IIS使用8081端口。

  接着在Apache中修改httpd.conf文件,启用proxy_module和proxy_http_module,修改的内容是:

    LoadModule proxy_module modules/mod_proxy.so
    LoadModule proxy_http_module modules/mod_proxy_http.so

  然后在Apache的httpd.conf文件中增加如下几行:

    ProxyPass /php !
    ProxyPass /asp/ http://localhost:8081/
    ProxyPassReverse /asp/ http://localhost:8081/
    ProxyPass /jsp/ http://localhost:8080/
    ProxyPassReverse /jsp/ http://localhost:8080/

  然后在<Directory>中设置各个服务所在网站的目录权限,这样php目录即可跑apache,支持php和perl,而asp目录则跑IIS,jsp目录跑Tomcat,全部都可共享80端口,一个端口同时支持Perl、PHP、ASP、JSP四种语言,兼容性很好,性能也不错。

  另外,将上述命令放在<VirtualHost>中,可以实现不同的虚拟主机使用不同的Web服务器,同一个端口同样可以跑多个Web Server,这对于那些出售虚拟主机的人来说很有用,如果你想在一台Windows服务器上配置不同的Web服务的话也可以尝试一下。

  以上配置在Windows Server 2003、Apache 2.2.6、Tomcat 6.0.16、IIS 6.0的环境下调试通过,运行正常。

2008年4月15日星期二

PayPal帐号的冻结和解冻

  前段时间使用国际PayPal购物的时候,我犯了一个错误,导致帐号被冻结,提交了不少资料才将帐号解冻,这里我详细说明一下PayPal帐号冻结的具体原因和过程,以便大家不要再犯我这种错误。

  我的国际PayPal是用来支付美元的,绑定了我招商银行的信用卡。注册PayPal的时候我犯了一个错误,就是用户名写的是我的英文名而不是中文名的拼音,虽然对于平时购物没有影响,但这次却发现了名字带来的麻烦。

  由于对DreamHost的失望,这次我打算购买另外一家美国的虚拟主机,由于该主机在国内无法访问,我使用了某某代理服务器软件才进行访问,填写了用户信息后,填写使用PayPal支付费用,接着进入PayPal的界面,然后我就进行了登录,这时我才发现我没有退出代理服务器软件,在使用代理的情况下登录了PayPal,为了防止出错,我退出了PayPal以及代理服务器后重新登录PayPal进行支付,将虚拟主机的费用进行了支付,支付提示成功。

  之后我就等待美国虚拟主机提供的主机帐号,没想到主机帐号没等到,等到的却是PayPal帐号的冻结邮件。

  PayPal在邮件里称:“作为我们的安全措施的一部分,我们会定期检查PayPal系统中的活动。在最近一次检查中,我们有理由相信您的账户被第三方访问过。我们限制了对敏感的PayPal账户功能的访问,以防您的账户被未经授权的第三方访问过。我们知道,限制账户访问可能会造成不便,但保护您的账户是我们最关心的问题。为了保护您,我们已经限制了对您的账户的访问,并将持续到能够完成附加安全措施为止。对此可能造成的任何不便,我们深表歉意。要查看您的账户以及PayPal用于决定限制您的账户访问的部分或全部信息,请访问调解中心。”

  这实在令我大吃一惊,我估计,我在使用代理服务器登录PayPal的时候,留下的是美国的IP地址,然后又用国内的IP地址进行了一次交易,PayPal就判断我的帐号被人黑了,于是暂停了这笔交易,同时对交易双方进行调查。

  我再次登录PayPal,发现帐号果然被冻结了,无法进行任何交易,购买虚拟主机的交易也被冻结,我只好进入PayPal的调解中心。

  在调解中心里面,PayPal要求我修改帐号密码、修改密码提示问题、同时要求我将住址的水电费的单据传真或者上传给PayPal。

  我按照要求上传水电费的单据后,PayPal又说单据上的姓名和我PayPal帐号的姓名不符合,要求我提供信用卡账单,我再次提供信用卡的账单,PayPal又要求我写一份保证书,注明“以下交易是在我的授权下完成的,交易编号XXXX”,然后签字上传或传真给PayPal.我照着写完保证书之后,终于在交易的三天之后,解除了PayPal帐号的冻结,并成功支付了金额,不过,虚拟主机商那里由于前几天迟迟没有收到我的金额,已经将我的帐号删除,我又得和虚拟主机商进行协调,PayPal这次在我们交易双方折腾这么一下,可把我给害苦了。

  我的几点体会:

  一、绝对不要通过代理服务器访问PayPal。更不要通过代理访问后再进行交易。

  二、国际PayPal中的用户名应该使用姓名的拼音,而不应该使用英文名,否则会有一些意想不到的麻烦,最终一次一次发国际传真可不是一种好感觉。

  三、国际PayPal的中国大陆用户目前由香港PayPal进行管理维护,而香港的财务制度和银行体系和中国大陆不尽相同,因此相关信息交流会有隔阂,好在香港和大陆没有时差,客户服务还算及时,要是由时差颠倒的美国那里服务可就惨了,估计时间至少要延长一倍。

  四、不得不承认的是,PayPal对于网上支付的安全非常严格,很值得国内做网上交易的银行学习,如果国内的网银也有PayPal这样严格的安全管理,那么就不会有那么网银帐号被盗的事情发生了。

  五、要是那天PayPal被电信局给封了,那才是一场灾难的,估计那时会有不少中国人使用代理服务器上PayPal,后果可想而知了。

  最后,其他PayPal冻结和解冻的经验,请参考一下这篇文章