Categories
Recent Posts

Archive for December, 2008

namecheap无法正常访问

这几天域名注册网站namecheap.com无法正常访问了, 只能打开网站的html页面却无法下载css文件,导致页面错乱, 好在网页源码下载正常,所以基本功能仍然可以使用。 不知道具体原因,但是要续费一个域名折腾了半天才搞定, 希望早日能正常访问。。。

Verizon赢得域名侵权案获赔3320万美元

北京时间12月26日消息,据国外媒体报道,美国地方法庭近日判决,网络服务公司OnlineNic应向Verizon Communications(以下简称“Verizon”)支付3320万美元,作为以Verizon商标注册了数百个域名的赔偿金。美国加利福尼亚州 圣何塞地方法官杰里米·福格尔(Jeremy Fogel)于12月19日就此案作出了缺席判决,下令冻结OnlineNic资产,并责令该公司为其以Verizon商标注册的663个域名向 Verizon支付赔偿,每个域名赔偿5万美元。

Verizon于6月份对OnlineNic提起诉讼,称该公司侵犯了Verizon商标,犯有非法“网络蟑螂”罪,即在国际上抢注域名,混淆网络用户视听。Verizon称,这些域名经常将用户引到推销与Verizon产品有竞争关系的产品页面。

Verizon法律顾问萨拉·德茨奇(Sarah Deutsch)周三发表声明称:“本案旨在传达一个明确的信息,即威慑那些‘网络蟑螂’,阻止其继续以误导消费者为主要目的运营业务。”

Verizon在这起诉讼中要求获赔最多6630万美元,索赔目标包括Myverizonwireless.com、Iphoneverizonplans.com和Verizon-cellular.com等网站。

Verizon在法庭文件中指出,OnlineNic注册了90多万个与全球各大公司名称相似的域名,如谷歌、阿迪达斯、新闻集团旗下的 MySpace、沃尔玛和雅虎等。Verizon指控称,OnlineNic使用一种自动程序注册域名,并采取了“许多方法掩盖其真实身份”。

OnlineNic则在网站上称,该公司自1996年以来就已经是一家与ICANN(互联网域名与地址管理机构)签定委任协议的国际域名注册商。

目前,OnlineNic尚未就本案判决置评。

原文地址:http://cnbeta.com/articles/73305.htm

在自己的程序中实现Email功能

在iPhone上如果想在应用程序里发送邮件只能通过调用系统默认email客户端程序,使用mailto协议,具体方法为

1
[[UIApplication sharedApplication] OpenURL:@"mailto:someone@web.com?subject=test email...">mailto:someone@web.com?subject=test email..."];

这种方式建档方便, 如果只是简单的发送文本完全可以胜任, 不过如果需要发送附件或者html格式化的信件,这种方法将无法实现,此时需要在自己的程序中实现email发送代码。 如果你不想自己去实现发送的代码,请看SKPSMTPMessage , 该项目是google上的开源项目,实现了iPhone平台通过SMTP发送email的功能, 你可以通过http://code.google.com/p/skpsmtpmessage 获得代码,加入自己的项目即可。

SKPSMTPMessage 的使用方法也很简单,只需要分配一个新的SKPSMTPMessage 对象,设置相应的字段即可,比如

1
2
3
4
5
6
7
8
9
10
SKPSMTPMessage	mailMsg = [[SKPSMTPMessage  alloc] init];
mailMsg.fromEmail = @"mylogin@gmail.com"; 
mailMsg.toEmail = @"mylogin@gmail.com"; 
mailMsg.relayHost = @"smtp.gmail.com"; 
mailMsg.requiresAuth = YES; 
mailMsg.login = @"mylogin"; 
mailMsg.pass = @"mypassword"; 
mailMsg.subject = @"test message";  
mailMsg.validateSSLChain = NO; // 只用于自验证
mailMsg.delegate = self;

 

详细文档请访问http://code.google.com/p/skpsmtpmessage

共享软件作者建站利器–无数据库CMS

一般的cms都需要mysql等数据库来存储内容和配置信息, 这样的前提条件对于一般的小站来说有些庞大, 有点拿大炮打蚊子的意思。 所以简单的基于文本的cms, 对于软件作者尤其是共享软件作者来说是非常好的选择, 选择无数据库的cms基于以下四个原因:

  • 内容很少更改, 相对来说内容比较固定,不会经常改变
  • 主机空间不支持数据库,或者限制较多
  • 站长没有数据库相关管理经验
  • 网站有可能需要更换空间, 有利于移植
  • 下面是搜集的几个基于文本数据库的cms系统
    CMSimple | www.cmsimple.com
    开发语言: PHP >= 4.04
    主要功能: 支持多达1000个独立页面,可视化编辑

    cms -db | cms-db.de
    开发语言: php5
    主要功能:sitemap, 留言薄

    moziloCMS | cms.mozilo.de
    开发语言: php >= 4.3.0
    主要功能:布局管理

    web dir X | www.webdirx.drcho.be
    开发语言: php
    主要功能:可以管理最多120个页面

    GuppY | www.freeguppy.org
    开发语言: php
    主要功能:留言本, 新闻邮件管理, PDA版本

    提取iPhone程序生成的数据文件

    如果你想从iPhone中取出应用程序生成的数据文件, 一般来说有三个方法,

    1. 使用Jailbreak 版本的iPhone或者ipod touch,安装ssh , ftp或者其他手机软件都可以完成此项任务。 这是最省事最方便的办法,不过严格的说事非法的:)
    2. 如果程序是你自己写的, 那么在程序中加入upload上传代码,将数据文件上传到指定的服务器
    3. 如果你是开发人员,只需打开xcode的organizer 即可完成数据文件的提取

    对于普通用户,尤其是国内的用户来说,基本上都使用的是Jailbreak版本的水货机, 所以基本上无此烦恼。 而对于开发人员来说,常常需要知道自己的程序在真机上运行的情况以及生成的文件是否是正确的, 毕竟模拟器和真机还是有区别的, 所以第三种办法是最合适的。操作起来很简单。 只需将iPhone连接到电脑上, 打开xcode, 在windows 菜单下选择 Organizer , 然后在左侧选择自己的iPhone标示,在右边的application项中找到需要的程序, 如图

    点击左侧小箭头,就会看见Application Data了, 这时只需点击右侧小三角形,就可以将数据文件下载到自己的电脑上了。

    Objective-C class for zip/unzip zip format files

    This is a simple class for compressing and extracting files. It works depend on minizip, which is a open source zip format library. And it’s included in the attachment.

    The major class name is ZipArchive, it’s easy to use, you can declare a instance and call initialize functions, and then call addFileToZip or UnzipFileTo to finish compression or uncompression.

    The code below shows you how to use it.

    To create and add files to a zip

    1
    2
    3
    4
    5
    6
    7
    
    		BOOL ret = [zip CreateZipFile2:l_zipfile];
    		ret = [zip addFileToZip:l_photo newname:@"photo.jpg"];
    		if( ![zip CloseZipFile2] )
    		{
    			l_zipfile = @"";
    		}
    		[zip release];

    Extract files in a zip file to special directory, if the directory does not exist, the class will create it automatically. also if you pass ‘overWrite’ as ‘YES’ it will overwrite files already exist. You can also implement the methods of ZipArchiveDelegate to give more choices for overwriting.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    
    	ZipArchive* za = [[ZipArchive alloc] init];
    	if( [za UnzipOpenFile:@"/Volumes/data/testfolder/Archive.zip"] )
    	{
    		BOOL ret = [za UnzipFileTo:@"/Volumes/data/testfolder/extract" overWrite:YES];
    		if( NO==ret )
    		{
    		}
    		[za UnzipCloseFile];
    	}
     
    	[za release];

    zip/unzip wrapper class for Objective-C