夸奖一下Dreamhost的Support

  下个月我的Dreamhost就要到期了,而在这个月的早些时候我已经把大部分站点从DH转移到了Linode,所以在7号我决定把DH送我的那个域名也转移到Linode上,顺便尝试把这个域名转移到Name.com管理。基本过程如下:

  • Nov 7 在Name.com付了$7.95来Transfer那个DH的赠送域名。
  • Nov 7 从Name.com的提示信息里获知它不能得到DH那个域名的管理员邮件地址。
  • Nov 7 写了封求助信给DH的Support,当天回信告诉我如何转移域名。(打开域名锁定,打开域名信息保护,获取auth code)。
  • Nov 8 写了封信给Name.com的Support,让他们再次做Transfer尝试。
  • Nov 10 Name.com没有回应的情况下再次写了一封。
  • Nov 12 Name.com来信告知如何再次尝试Transfer,从这封格式化的信中无法获知它是在回复我的2封求助信,还是发现我的Transfer没成功的例行提示。
  • Nov 12 DH在1个小时后发信给我确认转移域名,有友好的确认按钮可以按。
  • Nov 12 Name.com确认转移完毕。
  • Nov 14 所有DNS同步正常,Name.com提供的域名保护正常启用。

  整个过程DH都提供了及时和友好的帮助提示,而且这4年来我的每封给Support的信都会在至多一天的时间里回复我,而且回信内容都是极其人性化的。Name.com是我比较喜欢的域名提供商,但是这次的经历让我对它们的Support反应实在有些不爽。不过不管怎么样,这两家提供的服务和效率都比国内的域名商们好的太多太多了。

如果你对Linode有兴趣可以用这个地址注册:http://www.linode.com/?r=2423bd4b1aea90e0163241cd71513fe1b81108d3或者在注册的referral code中填2423bd4b1aea90e0163241cd71513fe1b81108d3,大约在三个月后我能得到一些好处,当然你直接跑去注册也没问题,以上链接并不会给你带来更多的优惠(当然也没什么坏处)。我个人在这里提供一个首月返还$10的Promo Code:storecrowd,这个是实在的优惠。

Google Wave 邀请若干份

  这两天工作比较忙,没时间写搭建站点的文章。不过现有Google Wave邀请若干,有兴趣者可以留言索取,email地址不用在正文内容中提供,只要在个人信息的Email里留下就行。

Update:现在总共有20份,所以留言的前20位我一定会发到的,如果以后还有我会继续发送。

20份发送完毕,发到那个猥琐的“官人。我要”为止暂时。

新到30份邀请,已经留言的我会继续邀请,有兴趣的可以继续留言。

Wysiwyg编辑器试用失败,markItUp推荐

  从昨天早些时候开始我就在twitter上说今天要对一些Wysiwyg编辑器进行一个比较详细的评测,之所以做这样的评测也是因为我想为Drupal后台找一个顺手的编辑器。但事实上在这个评测在开始半小时后我几乎认为Drupal不会存在一款适合我的编辑器。这个Wysiwyg编辑器的列表如下:FCKeditor,Whizzywig,jWYSIWYG,WYMeditor,NiceEdit,markItUp,TinyMCE,openWYSIWYG。
  列表从一开始就被去掉了一半,因为我需要的Wysiwyg编辑器必须能显示源代码,而不仅仅是一个Rich的效果。然后在两大流行强者FCKeditor,TinyMCE的试用中发现了一个很麻烦的情况:这两款编辑器对现有文章再编辑会造成混乱。在花了10分钟的调整Drupal默认编辑格式后这种情况有所好转,但一个有趣的现象引起了我的注意。Wysiwyg的意思就是“所见即所得”,所以这些编辑器都提供了一个Rich的编辑窗口,所有的内容都像Word这些字处理器那样直接展示了字体大小、颜色、项目序号、图片内容。但问题是它们显示的并不是最终展示给访问者的最终效果。
  大部分编辑器的Rich编辑窗口只是尽量展示了一个“标准”效果的效果,而不是根据当前模板的css来展示效果。唯一一个调用当前模板css的是FCKeditor,但是由于FCKeditor功能过于强大所带来的庞大体积和较慢的读入速度一直处在选择清单的一个尴尬位置上。
  让人沮丧的测试情况直到我激活了markItUp这个编辑器戏剧化的转变了。刚开始看到可怜的6个功能图标几乎让我放弃尝试,但是当随意的点了一个“加粗”图标后,整个状况完全不同了。妈的,markItUp竟然不是Wysiwyg编辑器。
  markItUp并不是Wysiwyg,Drupal下用于切换编辑器的WYSIWYG模块竟然不负责任的把它也包括在了支持列表中,也因为这样我得到了一个极其理想的后台编辑器。推论一下如果markItUp并不优秀或者极其简陋是不可能被包括进那个列表的,于是跑去它的产品页面找了下,果然发现大量的Sets:Html, BBCode, Textile, Markdown, Wiki syntax, CSS…(这个列表可以继续列下去)。
  点下markItUp按钮的瞬间我就明白了我并不是在找寻一个Wysiwyg编辑器,我需要的是一个“好”的编辑器。它应该可以显示源代码;有很好的扩展性;速度要快;能和Drupal整合的很好;可以为访问者单独设定使用界面。这些markItUp全部做到,即使没有Wysiwyg,Drupal自己的Preview也弥补了这个小小的缺憾(并且Preview提供的是最终页面展示效果)。

Linode下的Apache2+Mysql+Php安装配置

如何快速搭建一个VPN(pptp)

  这是一个简短的教程,目的是为了快速搭建一个可用的VPN,本文并不涉及有关VPN的正常使用内容。本简短教程基于以下硬件条件:

  1. 一台安装了Debian GNU/Linux 5.0的VPS。
    • 当然理论上所有可以安装pptpd包的*nix系统都可以作为主机,教程中安装方式是基于Debian的apt-get命令,其他发行版请自行对照使用。
  2. 这台VPS的物理位置是Fremont, CA。
    • 物理位置作为VPN这个应用本身并不重要,在这里提出只是多此一举。

安装服务器端软件

# apt-get install pptpd

  Debian的包管理是所有发行版里最好的,所以这条命令打完就安装完毕了我们的pptp服务器端程序。

配置IP地址范围
  编辑/etc/pptpd.conf,在最后添加如下地址:

localip 192.168.0.1
remoteip 192.168.0.234-238,192.168.0.245

  这两句设置了当外部计算机通过pptp联接到vpn后所能拿到的ip地址范围和服务器的ip地址设置。

增加一个用户
  编辑/etc/ppp/chap-secrets,在下面增加类似的条目:

username pptpd password *

  上面内容很好理解,最后那个星号是说允许从任何IP地址联接,如果你想单独设定IP地址也可以。

重启pptpd服务

# /etc/init.d/pptpd restart

  理论上到这里一个vpn就已经搭建完毕了。无论你用的是Windows还是OSX,或者是iPhone OS,都可以通过建立一个pptp链接来联入这个VPN。不过你并不能通过这个来上Internet,因为所有的数据都作用于那台pptpd的服务器上,而不会传入拨入的计算机设备上。要上Internet还需要这么干:

dns解析支持
  编辑:/etc/ppp/options,在里面找一下“ms-dns”项目:

ms-dns 208.67.222.222
ms-dns 208.67.220.220

  我填写的是OpenDNS的地址,当然你也可以填写电信的DNS。

允许转发
  编辑/etc/sysctl.conf,看一下net.ipv4.ip_forward参数是不是1。

net.ipv4.ip_forward=1

  最后的最后,运行一下这条命令来打开iptables的转发支持:

/sbin/iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE 

注意:来自@LEMONed的消息,只有Xen的VPS可以搭建pptp,OpenVZ的不行。

引用来自@LEMONed的话:
因为openvz下只有venet0,没有eth0,而绝大多数的vps都是openvz的,然后绝大多数的openvz vps都没有masqurade,只能搭建openvpn并且要自签证书什么的,根本不能用pptpd。我为了给iphone搭个vpn曾经把这个研究透彻了

看来过几天我得再写一份搭openvpn的教程。

这里有个如何在openvz下搭建OpenVpn的教程:OpenVZ VPS安装配置OpenVPN