终于把自定义链接格式搞定了

这两天没事,把URL优化也就是rewrite改了一下,除了文章地址可以自定义外,其他的连接都做成目录结构了,据说这样对SEO比较好,况且国外的一些程序都是默认就是目录结构的。我这里做简化一点,不和WP比标签多,仅仅支持年月(%year_month%)、日(%day%)、分类名字(%category%)、作者名字(%author%)、文章ID(%article_id%)几个标签,不过应该够用了。因为有些时候要从数据库里查这些信息。自然效率就要慢那么一点点了。但是对于这些有用的功能来说,这些人为感觉不出的差距换来这些功能应该算比较值得的。

但是,这仅仅做了一半。因为要做成WP的那种形式。.htaccess文件都是不变的,而处理是在PHP文件里处理的。我也是搞了半天才懂。毕竟我不喜欢class,所以阅读起来有一定困难。

流程是这样的,开启rewrite功能后,程序就把页面上的链接全部处理成设置的格式。比如:
http://www.sablog.net/blog/archives/295/

.htaccess里的代码作用是不管什么请求,都是请求index.php,或者如果不支持rewrite的话,当404错误的时候,请求rewrite.php文件。由rewrite.php文件来处理。用$_SERVER['REQUEST_URI']来处理获取的参数,然后按照设置的格式,转换成程序的各种参数,从而达到不管支不支持rewrite,都能实现rewrite的效果。而且用户不需要再去费脑筋去考虑htaccess文件了。至于转换的规则。肯定是写在数据库里了。

这个还要感谢seaprince的指点,我才能这么快搞清楚。已经有了思路。以后就慢慢完善了。透露下一个版本的版本号:1.7,Sablog-X将在2.0的时候进军国际!

Yeah~~~~~

关键词: htaccess , rewrite

上一篇: FCKeditor 2.4.3精简优化带代码高亮(Dphighlighter)插件版
下一篇: 新设计的汽车贴花

#1
回复 xpb 2007-07-20, 7:16 AM
angel 真早^_^
#2
回复 逍遥老鬼 2007-07-20, 8:04 AM
看来不用等到2.0就有新版本了……1.7,不知道都有什么呢?现在都做出来了2.0还能加什么?
#3
回复 zhiqin 2007-07-20, 8:25 AM
^_^ 第三个 作个广告
我的BLOG http://zhiqin.32o.cn/z/

SA的老祖宗 辛苦你了
#4
回复 鬼仔 2007-07-20, 10:26 AM
RSS中的链接还是老的
#5
回复 BMW 2007-07-20, 10:39 AM
呵呵。。。大A,下个版本准备实现自定义模板吗?
#6
回复 Freeman 2007-07-20, 12:52 PM
"不管什么请求,都是请求index.php"有一个缺点,就是自己再添加一些重定向时会比较麻烦。
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /blog/index.php [L]
影响太大了,个人觉得还是像F2blog那样一条一条定义比较好。
#7
回复 Giki 2007-07-20, 3:02 PM
又有新版本了阿。。- -,
辛苦了,
#8
回复 angel 2007-07-20, 3:04 PM
WP那样比较通用一些。我感觉一条条写也不错。但是对于很多人来说搞这个文件比较困难。。
#9
回复 依山居 2007-07-21, 2:59 AM
^_^angel好
我来宾滴
#10
回复 mybg 2007-07-21, 3:30 PM
对优化该怎么入手?现在成这样了,收录的千篇一录

http://www.google.cn/search?complete=1&hl=zh-CN&q=site%3Awww.mybg.cn&meta=
#11
回复 Hoofei 2007-07-22, 12:33 AM
@mybg: 你的这些页面的 title 都是一样的. 被收录的 title 当然也就会"千篇一律".
#12
回复 yaoyao 2007-07-22, 1:43 AM
$_SERVER['REQUEST_URI']并不是所有主机都支持,可以利用替代函数代替。
#13
回复 mybg 2007-07-22, 1:20 PM
引用 Hoofei 说过的话:
@mybg: 你的这些页面的 title 都是一样的. 被收录的 title 当然也就会"千篇一律".

这个要怎么改?
#14
回复 老鬼 2007-07-22, 5:02 PM
直接生静态算了,现在PHP的blog没一个生静态的了
#15
回复 yaoyao 2007-07-22, 10:50 PM
引用 老鬼 说过的话:
直接生静态算了,现在PHP的blog没一个生静态的了
生成静态有什么好,全被人采集。
Total: 36123Next ›
发表评论

评论内容 (必填):