最近好多人都在问我GoDaddy的域名转向设置方法。其实我没用过GoDaddy的域名转向, 而且据说在中国国内无法访问域名转发服务。幸好GoDaddy对每个域名都提供了免费的虚拟主机, 虽然是带广告的,不过我们可以用它来做自己的域名重定向。 方法么,自然是用mod_rewrite了。

以下假设你的域名为example.com,并假设你要将 blog.example.com 重定向至 www.myblog.com/myname/, 如用户访问 http://blog.example.com/archives/sample.html 则会自动转向至 http://www.myblog.com/myname/archives/sample.html。

下面这一段翻译自GoDaddy的帮助。 我的免费空间正在使用,因此没法一步步抓图了。

  1. 首先登录GoDaddy,然后选择菜单Hosting & Server->My Hosting Account。
  2. 你会看到页面上有Free Hosting Credits的字样,单击旁边的Use Credit建立虚拟主机。
  3. 选择你要关联的域名 example.com,然后选择主机类型为 Linux,然后Continue。
  4. 单击 Set Up Account。
  5. 在 Hosting Manager 中单击 Accept 接受最终用户协议。
  6. 输入用户名和密码。
  7. 单击 Continue。
  8. 确认之后单击 Submit。

之后进入Hosting Manager就可以管理你的免费虚拟主机了。控制面板功能很简单,我就不多罗嗦了。 下面就开始做域名重定向。

首先打开Domain Management,单击example.com下的Add Sub Domain,添加子域名blog, 路径随意,这里选择< same as sub domain >。

godaddy-domain-redirect-01.png

大约半小时之后状态会变成 Setup。马上通过FTP登录虚拟主机,可以看到主目录下出现了blog子目录。 在 /blog 下建立一个 .htaccess 文件,内容如下。

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteRule ^(.*) http://www.myblog.com/myname/$1 [R,L]
</IfModule>

GoDaddy服务器会缓存.htaccess文件状态,新建或删除.htaccess文件一般要等待10-30分钟之后才会生效(修改则会立即生效)。因此建议虚拟主机建好之后马上建立空的.htaccess文件以节约时间。

这样所有访问 http://blog.example.com/ 的请求都会被转向至 http://www.myblog.com/myname/ , 而且你可以通过修改 RewriteRule 来定义更为复杂的转向规则。