D-haha 的情侣博客 » 只言片语 » 将地址设为"/"来实现所谓多域名不可行
昨日收到 nobird 在 RSS 友情链接插件发布页的评论 原评论为:
这个插件遇到点问题,zblog,后台设置域名为“/”时,可以进行所谓的绑定多域名,结果rss中输入的文件地址是没有网站地址的,只有相对路径,比如这个网站
http://www.u3u3.com.cn/rss.xml,这样在这个插件识别rss的时候直接识别相对路径,导致友情链接无效...汗个...我才发现的东西...
本来是要回复留言的, 可话题越说越多, 不妨提出来另写一篇吧, 上次这样写文章已是很久很久之前的事了.
实话说, 我是在 1.8 Arwen 发布后看了论坛里的这个贴子才知道, 原来 Z-Blog 是"可以实现多域名的". 就是设置博客地址时使用 "/", 而不是带协议的绝对地址. 既然办法如此简单, 为什么那些希望 Z-Blog 在下个版本中实现多域名的建议屡屡无柰的落空, 而星星光, 月亮光, 挖笋, 漫游神一干人等却拐弯抹角的写代码, 又是 global.asa, 又是 301 重定向, 忙得不亦乐乎?
因为将地址设为 "/" 来实现所谓多域名并不可行.
那些发明了后台设成 "/" 来实现多域名的人太天真, 他们明白了 "/" 的含义却毫不清楚网站提供绝对地址的必要性.
因为单独的 "/" 代表根的意思, 在任何页面下均会指向该页面所在域名的根, 新版 Z-Blog 已不允许这样设置, 有人在论坛里问为什么时我已解答过了, 也不知提问者是真理解了, 还是仍然以为新版在故意刁难人, 放着这么好的实现"多域名"的方法却不让用, 于是直接去强行去修改文件...
没找到介绍这种方法的出处在哪, 也曾以为这只是个不起眼儿的小歪道儿, 但显然还是有相当多的不明道理的人乐于接受这种"简单实用小窍门"而成为受害者, 如今, 受害者终于和我的插件撞了面.
回到 nobird 评论里提到的问题, 这个问题并非来自于友链插件, 而是来自于 RSS 源. 源里的 "/" 到了其它域名下当然立刻叛变没商谅! 我也明白 nobird 的意思是让我处理一下相对链接, 根据 RSS 地址的域名来将这些相对链接来变成绝对链接. 这不难, 但是:
- RSS 页面中使用相对链接本来就是错误滴.
- 抓虾, Feedsky, FireFox2 都不处理这种 RSS, 可见只有非常非常少的 RSS 才会犯这种白痴错误.
- RSS 的域名也不一定就是网站的域名, http://feed.nobird.org/ 就是例子.
- 让 RSS 变成相对地址的原因是某些人为了追求所谓多域名而将博客地址设成了 "/", 而这么做所带来的错误不仅仅在 RSS 页面上, 加上 Arwen 版在后台中已不能将博客地址设为 "/" 了, 所以考虑这种错误完全多余!
现在的网站已不仅仅是挂在那儿让人访问页面, 有更多的互动元素在里面. 很多互动元素都基于域名这个网站的 ID. 这也是为什么现在大多数网站都需要设置地址(当然智能一点儿的作法是自动识别). 无视这些而自作聪明的用 "/" 代替所需的绝对地址不会造成页面访问问题, 但是:
- 网站的 RSS 经常会碰壁.
- 如果使用了 http://feed.yourname.com 这种形式来为 Feed 实现无缝迁移, 那彻底死定了.
- Ping 通知绝对无法使用, Trackback 也有去无回.
- PubSubHubBub 及类似的即时协议都将无法使用.
- 网站发出的系统邮件中包含的链接全部是错误的.
- 还有更多...
有些情况下是可以找到网站的绝对地址来纠正错误, 比如 RSS 源; 但有些情况就不能, 比如邮件. 更何况, 谁也不能指望其它人消耗资源来为自己的错误买单.
再把话题说到多域名的问题上, 将多个域名解析到一个空间上, 让所有的页面都可以通过不同的域名访问这种行为其实很弱智, 搜索引擎会认为这些网站在互相 Copy. 连 Google, 网易这些网站都用重定向来保证多域名情况下网页地址的唯一性, 这还有什么好说的呢?
自作聪明的多域名使用方式, 导致了自作聪明的地址设置, 真是一脉相承.
最后多余的解释一下 "/", "./" 和 "../" 在地址中的含义: "/" 表示根目录; "./" 表示当前目录; "../" 表示上一级目录.
不多,这并不妨碍我快乐的用z-blog~~~
不过,说的都是科普知识啊。不妨让zx聘你为博课客座教授吧。
发表评论: