Archive for the ‘Web’ Category

Safari 3.2 增加防钓鱼功能

November 14th, 2008
Posted in Application, Web | 3 Comments »

Apple 在刚刚发布的 Safari 3.2 中正式加入了放钓鱼(Anti-phishing) 系统,当访问欺诈网站的时候会自动提醒访问该网站存在危险。虽然不知道 Apple 的数据是从哪里来,不过随便搜索到一个欺诈网站测试了一下:

warning about phishing site
在访问欺诈网站的时候 Safari 会提醒

这大概是 Safari 目前(和其他浏览器相比)最需要的一个功能了吧。之前 eBay 曾经因为 Safari 没有放钓鱼系统建议用户使用其他浏览器来进行交易,不过我也很少用 eBay,平时也没有碰到过什么 Phishing Site,所以也没有太注意过。

Update: 数据是来自 Google,谢谢 fireyy 提醒。

3 Comments »

我的 Gmail 帐号开通了 IMAP

October 25th, 2007
Tags: , , | Posted in Web | 2 Comments »

23 号就在 DownloadSquare 看到 GMail 开通了 IMAP 服务的消息,但是我在用的两个帐号都没有动静。今天看了一眼,终于轮到我啦,嘿嘿嘿。

BTW,这个东西和申请的时间似乎没有关系,因为有一个帐号是 2004 年申请,但是其他好多 2005 年的都已经开通啦。

GMail IMAP is enabled

如果你还不知道 IMAP 是什么(引自 Wikipedia):

Internet Message Access Protocol (一般称为IMAP,以前称作交互邮件访问协议)是一个应用层协议,用来从本地客户端访问远程服务器上的邮件。IMAP和POP3(邮局协议 version3)是邮件访问最为普遍的Internet标准协议。事实上所有现代的邮件客户端和服务器都对两者给予支持。IMAP现在的版本,IMAP第四版第一修订版(IMAP4rev1),在RFC3501中定义。

IMAP 最大的好处是可以在服务器保存邮件的状态。如果在手机,PPC 上读过邮件,那么回家之后在 Mail.app,雷鸟中看这封邮件的时候它就已经是“已读”状态──再也不需要记住哪一封邮件读过,哪一封邮件回复过。以前每次出门都会被这个问题困扰一下。

GMail 的帮助中已经有各个常用客户端的 IMAP 帐号设置方法,我参照这个帮助设置了 Mail 的设置(有一些默认的端口还是要改的)。

希望你的帐号也早日开通 IMAP。;-)

2 Comments »

RoR 中 Prototype 的中文乱码

June 18th, 2007
Tags: , , | Posted in Web | No Comments »

今天在写 Ruby on Rails 的时候发现,AJAX 传回中文数据会出现乱码。搜索以后发现原来可以这样做。在 controller 中加入

before_filter :set_charset def set_charset @headers["Content-Type"] = 'text/html; charset=gb2312"; end

我很懒,直接写到 ApplicatiopnController 中了,搞定。

No Comments »

Safari 3 Beta: Mac + Win

June 12th, 2007
Tags: , , | Posted in Application, Mac, Web, Windows | 1 Comment »

昨天的 WWDC 2007 内容除了众所周知的 Mac OS X Leopard 之外,Apple 还提供了 Safari 3 Public Beta —— Mac、Win 两种版本

从 Safari 2 来看,Safari 3 除了 WebKit 版本的更新之外,并没有太多重大的功能改变,而更多的是对现有功能的增强。而一些新功能,比如制作 Web Clip Widget,增强的 PDF 阅读器则可能要到 Leopard 中的 Safari 3 才能看到。

Safari 3 宣传最多的还是它的速度:根据 Apple 的说法,Safari 3 的速度是其他浏览器的 2 倍之多。而且根据 Jeff 的测试报告来看,Apple 也没有吹牛。

Overall Speed:
Safari 3.0 (Win): 398.6 ms
Safari 3.0 (Mac): 412.4 ms
OmniWeb 5.5.4 (Mac): 814 ms
Opera (Mac): 829 ms
Camino 1.5 (Mac): 1415.6 ms
Firefox 2.0 (Mac): 1755.8 ms
Firefox 2.0 (Win): 1768.6 ms
IE 7 (Win): 2101 ms
IE 6 (Win): 2109.2 ms
Safari 2.0 (Mac): 2727 ms

在 Web 应用日益丰富网络连接速度也越来越快的今天,页面渲染速度以及 Javascript 的执行速度对 Web Browser 的影响也越来越大。而许多第三方编译的 Firefox 优化版本也是以优化 JavaScript 执行速度为优化手段之一,让 Firefox 来更从容的面对越来越重型的 Web Aplications。可以说 Safari 3 在这些测试中表现出来的结果还是相当不错的。

Safari 3 Beta 新特性

Beta 版本中的新特性在 Mac 和 Windows 版本中 没有差别,如果 Windows 中的 bug 不算新特性的话。如果一直有在用 Webkit Nightly,可能这些功能并不陌生,但是对于 Safari 2 来说这些小的改变还是能让操作更便捷,比如我期盼已久的标签拖拽功能1

标签拖拽
这是一个我期盼已久的功能,标签可以用拖拽的方式来排列顺序(就像在 MyIE、Firefox 中)。不仅仅是如此,还可以用把标签“拖出”标签栏的方法,将标签页放到一个独立的窗口中。而在 Window 菜单中,也有相对应的“Merge All Windows”选项来把所有独立的窗口放到同一个窗口中以标签形式浏览。
文字搜索框
Safari 3 不再使用 Mac OS X 系统的文字搜索框,而是自立门户内建了另一个。看起来好像是 Firefox 中的文字搜索框,不过 Safari 将它放在了页面上边。键入搜索内容后 Safari 会将搜索到的文本高亮显示(页面其他部分变暗,关键字以橘色底白色字显示),在点 Next, Prev 的时候还会缩放一下文字来提醒你。
多标签退出提示
简单的小功能,在多标签浏览的时候,关闭窗口或者按 Command + Q 退出时会提示你还有其他标签。似乎也有人不喜欢这样的功能,可以在 Perferences 里关掉。
拖动改变文本输入框大小
HTML 中的文本框都会像窗口一样,可以在右下脚拖动缩放。说实在的,我没觉得有很大用处。╮(▔▽▔”)╭
为标签组添加书签
窗口中有多个标签时,Bookmarks 菜单中会有 Add bookmarks for these x tabs…。还算时蛮实用的一个功能,不过用到的机会似乎不多。新的 bookmarks 组默认是在当前窗口打开所有书签的(Auto-Click),在 Manage Bookmarks 中可以改。
设置图片为桌面背景
图片的关联菜单中有了 Use Image as Desktop Picture。刚刚从 Firefox 跳船到 Safari 时我很想念这个功能。现在?不太确定。因为已经习惯了把壁纸放到 Wallpapers 文件夹里再设置为壁纸。也许现在我可以先设置为壁纸看看效果,之后再决定是否要保存起来。

WebKit 渲染的改变

其实 WebKit Nightly 总是变来变去,就先说几个和 Safari 2 相比起来显而易见的吧。

  • 中文字体可以显示“粗体”、“斜体”等风格
  • HTML 元素(按钮、下拉选框、文字框等等)会以 CSS 定义的样式显示,而不是全都套用系统样式(Aqua 按钮,或者是 ShapeShifter 定义的样式)

关于第一点,心里有一些又爱又恨。能够显示文字风格固然很好,但是华文黑体变粗以后看起来真的是很……健壮。尤其是在粗体用得很多的论坛上,一向清秀的页面突然如此五大三粗让我有些不适应。

值得一提的是安装了 Safari 3 Public Beta 之后其他的程序也将使用新版本的 WebKit。

Other side: Win

早起的鸟儿有虫(Bugs)吃。何况是早晨的苹果,bugs 更是在所难免。早上 King 和我交流了一下,发现的 Bug 差不多都一样,不知道是不是和使用系统有关2

  1. 无法正常显示 CJK 字符,经常会出现掉字的现象。这个问题有点像 Firefox 早起版本在 Mac OS X 中运行的情况。
  2. 点“书签”按钮之后程序会当掉。
  3. 渲染页面的时候可能会有破损。

如果你发现了其他 Bug 也欢迎留言告诉我们。

仅凭第一点,Safari 3 Beta 目前对东亚用户来说就是无用的。(ー_ー )ノ” 在文字渲染方面 Safari 没有使用 Windows 自己的 Clear type,而是在选项中设置了 3 个等级(Light, Medium, Strong)。而(可以显示出来的)文字的字体也像极了 Mac OS X 中的日文字体。

相较 Mac 版本来说,这个 Windows 版本的 Safari 3 Beta 还是很 buggy 的一个程序——就像 iTunes 刚刚移植到 Windows 的时候。不过这么大的 Bug 相信在 Mac OS X Leopard 正式发售之前一定会有修正。╮(▔▽▔”)╭

Apple 想干什么

Safari 要移植到 Windows 在几年前就有传闻,但是一直到 WWDC 2007 之前都没有真正的动作。Google CEO Eric Schmidt 加入了 Apple 的董事会,iPhone 使用 Web 2.0/Ajax 的方式提供第三方支持,iChat 在 Leopard 的截图中表示可能会直接支持 Google Talk(不同于 Jabber)服务,AppleTV 将支持 YouTube,好像 Apple 正在用这种多媒体+网络+服务的方式来占领服务市场。将 iTunes 移植到 Windows 是在为 iPod 和 AppleTV 铺路,那么将 Safari 移植到 Windows 是不是在为即将发售的 iPhone 铺路呢?如果 iPhone 真的是用 Web2.0/Ajax 实现第三方程序的支持,无疑移植 Safari 到 Windows 会便于更多的 Developer 能够针对 iPhone 中包含的 Safari 开发第三方程序。


  1. 我很喜欢将标签页放到一个新的独立窗口中这个功能。因为总要打开许多网页,而我并不喜欢把所有的页面都放在一个窗口中——我只在同一个窗口里放内容相关的网页。这样在收集资料的时候我就不必在眼花缭乱的标签中拣出到底哪个标签是和当前页面相关的。 

  2. 我和 King 用的都是简体中文 Windows XP Professional + SP2 

1 Comment »

在 Symphony 中使用 Gravatar 服务

May 21st, 2007
Tags: , , | Posted in Web | No Comments »

Gravatar 是一项提供网络头像的服务,不同于以往各个网站“各自为政”存储自己用户的头像,Gravatar 存储的头像可以用于各种场合(e.g. Blog,网络社区,论坛,etc.)。用户以 Email 地址在 Gravatar 服务器中注册,并且被分配到以这个 email 地址的 MD5 Hash 为基础的头像地址。Gravatar 升级到 2.0 以后免费用户还可以为每个 Email 账户上传 2 个头像并且方便的切换(付费用户可以上传无限多)。

Symphony 中使用 Gravatar 服务很简单,因为它在 XML 结构中已经提供了 email 的 MD5 Hash,所以只需要在模板中加入相关代码就可以。

Email MD5 Hash

email-hash虽然 Symphony 可以直接输出留言 email 的 MD5 Hash,但是默认设置是不包括这一项的。在后台访问 BLUEPRINTS -> Controllers -> Data Source -> Comments,在 Format Options 中加入 email-hash 这一项。之后,在有留言的 entry 中就可以看到如下 XML 结构:

<comment id="85"> <author>LEMONed</author> <date year="2007" month="05" date="21" weekday="1">2007-05-21</date> <time hour="08" minute="49">08:49</time> <message><p>Gravatar!</p> </message> <url>http://www.ilemoned.com</url> <email>xxxx@xxxx.xxxxx</email> <email-hash>682aa6c6145a3ff168d5cd6d30120272</email-hash> </comment> </entry> </comments>

其中的 <email-hash> 就是 email 地址的 MD5 Hash,用它做为头像地址的标识就可以取得留言者的头像。

头像地址的格式

Gravatar 的头像地址分为 5 部分:

  • http://www.gravatar.com/avatar.php?
    头像必须以此地址起始(必选)
  • gravatar_id=279aa12c3326f87c460aa4f31d18a065
    将 gravatar_id 的值换为每个人的 email MD5 Hash(必选)
  • &rating=R
    对头像分级的过滤,可以用的值有[ G | PG | R | X ](可选)
  • &size=40
    头像大小(可选)
  • &default=http%3A%2F%2Fwww.example.com%2Fsomeimage.jpg
    默认头像的位置(这个头像不会自己缩放大小,可选)

在 Template 中生成头像地址

有了 MD5 Hash 和 Gravatar 头像 URL 的结构之后,一切问题都迎刃而解了。在 Utilities -> Comments 中加入生成头像地址的语句,比如:

<img src="http://www.gravatar.com/avatar.php?gravatar_id={email-hash}&amp;size=32&amp;default=http%3A%2F%2Fotherside.mimijidi.com%2Fworkspace%2Fimg%2Fblank_gravatar.jpg" alt="Gravatar" class="gravatar"/>

如果添加其他选项注意将 & 转换为 &amp;

No Comments »

Install WordPress on a Mac

April 7th, 2006
Tags: , , , | Posted in Mac, Web | No Comments »

为了在 Mac OSX 上安装 WordPress,我们需要什么呢?

  • Personal Web Sharing(Apache,系统内建)
  • MySQL
  • 当然还有亲爱的 WordPress

下载、安放 WordPress

首先我们要到 WordPress 的官方网站下载一个 最新版本的 WordPress,.zip 格式或者 .tar 格式都可以。将解压缩之后的文件放在 /Library/WebServer/Documents 目录下。/Library/WebServer/Documents 是 Web 服务器的根目录,你可以把它清空,然后把 WordPress 的文件直接放在里边,也可以在其中新建一个目录放置 WordPress(比如 /blog/)。在这里我们新建一个目录吧,就叫 wordpress,这样以后就可以通过 http://localhost/wordpress/ 来访问啦。

安放好了 WordPress 之后,我们就可以开启内建的 Apache 服务器了。

开启 Personal Web Sharing

所谓 Personal Web Sharing 就是 Mac OSX 下的 Apache(为什么不直接注明呢⋯⋯)。

开启这项服务很简单,在 System Performances -> Sharing 中,选中Personal Web Sharing,搞定。打开了Web Server,下一步就是安装MySQL了。

下载安装 MySQL

MySQL 数据库用于存储 WordPress 的各种信息(文章,评论,用户,等等),并且他对个人使用是免费的。最新的 MySQL 版本是5.0,并且 WordPress 2.0 也能很好的支持。

首先到 MySQL 5.0 的下载页,选择适合自己系统的版本下载。现在 5.0 有 PPC 和 x86 两种版本提供下载,下载完成以后 Mac OSX 会自动将 .dmg 文件 mount 到桌面。在 5.0 的安装包内会有4个文件:MySQL 安装文件,MySQLStartupItem(开机自动运行),MySQL.prefPane(System Performance 中的控制 MySQL 的面板),以及一个 ReadMe。首先运行安装文件,再运行 MySQStartupItem 配置自动运行,以及 MySQL.PrefPane。安装完成之后,我们就要开始设置 MySQL,设定用户密码,建立 Table。

设置 MySQL

终于到了最烦琐的步骤。打开终端(/Applications/Utilities/Terminal.app),依次输入以下命令。

cd /usr/local/mysql sudo chown -R mysql data/ sudo echo sudo ./bin/mysqld_safe &

接下来我们用 test 数据库来试探一下 MySQL 是否在正常运行。同样是在终端。

/usr/local/mysql/bin/mysql test

如果 MySQL 吐给你下面的信息,就说明 MySQL 已经成功运行了。`

Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 1 to server version 4.0.24-standard

Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the buffer.

mysql>

之后,输入 quit 退出 MySQL。

只让 MySQL 跑起来当然不够啦,我们还要为它重新设定 root 密码,并且创建 wordpress 用的数据库。

在终端中。

/usr/local/mysql/bin/mysqladmin -u root password yourpasswordhere

将其中的“yourpasswordhere”换为您的密码。

创建数据库,终端中。

/usr/local/mysql/bin/mysql -u root -p CREATE DATABASE wordpress; quit

这样,MySQL 也设置好了。

开启对 PHP 的支持

Mac OSX 虽然安装了 PHP,但是在默认设置下是未被启用的。为了唤醒沉睡的 PHP,我们需要编辑 /etc/httpd/httpd.conf 这个文件。

我比较喜欢用 Textmate,如果你不习惯也可以用 Vi,Pico 这些系统自带的编辑器。

sudo pico /etc/httpd/httpd.conf

哇~~好大的文件呀。没关系我们要修改的只有2行而已。;-) 让我们把目光投向”Dynamic Shared Object Support”段,在这里你会找到好多好多以“LoadModule”开头的列表,其中有一些被“#”号封印(注释掉了⋯⋯)着。现在我们就要解开php4的封印,删除 #LoadModule php4_module 前的 # 号,最后应该是这个样子。

LoadModule php4_module

接下来我们还要去掉 AddModule 中关于 PHP 4 的注释,最后会是这个样子。

AddModule mod_php4.c

将这两处的注释改掉之后,我们就可以保存文件退出了。为了让这些设置生效我们还需要重新启动一下 Apache 服务器。

sudo apachectl graceful

如果您在运行 Mac OS X 10.4.4 以上!

如果您的系统是 Mac OS X10.4.4 以上,那么还需要另外一个步骤。

在终端中执行。

sudo cp /etc/php.ini.default /etc/php.ini

之后编辑 /etc/php.ini,将

mysql.default_socket =

改为

mysql.default_socket = /tmp/mysql.sock

之后重新启动 Apache (sudo apachectl graceful)。否则您在安装 WordPress 的时候它会很不友好的告诉您:

Error establishing a database connection! This probably means that the connection information in your wp-config.php file is incorrect. Double check it and try again. Are you sure you have the correct user/password? Are you sure that you have typed the correct hostname? Are you sure that the database server is running?

关于这个错误的更多信息您可以参考 Mac OS X Server 10.4: Issues connecting PHP to MySQL

安装配置 WordPress

最恼人的部分终于结束了。安装 WordPress 的部分和您在远程服务器安装它的步骤应该是一样的。

打开 wp-config-sample.php,编辑基本系统信息。

define(‘DB_NAME’, ‘wordpress’); – Change ‘wordpress’ to the name of the database you created in MySQL (我们已经创建了数据库wordpress,所以这一项应该可以不改)。

define(‘DB_USER’, ‘username’); – 将 username 改为 root。

define(‘DB_PASSWORD’, ‘password’); – 将 password 改为刚才所设置的密码。

完成篡改之后,就可以把它另存为 wp-config.php 啦。

最后一步

在浏览器中运行 WordPress 的安装文件,按照我们的配置她应该是在 http://localhost/wordpress/wp-admin/install.php,如果您将 WordPress 放置在不同的目录请自行更改。整个的安装过程非常简单,WordPress 在询问你一些基本的 Blog 信息(比如 blog 的名字啦邮箱啦月光宝盒什么的)之后会随机生成一个 Admin 的密码,由于是随机生成的,所以现在请务必记好它,登陆以后立即更改。同时 WordPress 也会在 wordpress 数据库中自动创建所需要的表,这些就不需要我们去操心了。

最后的最后一步

那个随机密码实在是太不好记了,赶快到 User 页去改一个密码,或者新建一个用户吧~

大功告成!现在您可以在自己的 Mac 上试做插件、Theme 啦。如果带宽、资源足够,您甚至可以把它当作自己的 blog 服务器。

No Comments »

||