博客 » 闲话-技术 » 更换WordPress永久链接
更换WordPress永久链接
前两天翻阅一些介绍WordPress的博客文章时,又想了想永久链接的形式,一时兴起,给枫叶去了一封帮忙修改.htaccess的邮件:
如何301重定向我以前的链接,我以前是使用这种结构:/%category%/%postname%.html,需要改成这种结构:/%category%/%postname%/。
枫叶回信告诉我说这样改:
RewriteCond %{REQUEST_URI} .*\.html$
RewriteRule ^(.*)\.html$ $1/ [R=301,L]
于是今天晚上就把永久链接的形式修改了,改成这样最大的一点原因是:
使用老的结构形式时,页面、分类、存档等链接都是以(www.xxx.com/xxx/xx)存在的,我觉得正确的应该是:(www.xxx.com/xxx/xx/)就是末尾一个斜杠的区别,具体原因大家可以看看Permalink Redirect插件作者在页面中所写的,大概意思就是不带斜杠的请求的是一个文件,而带斜杠的才是请求该目录下的index文件。
估计修不修改对搜索都差不多,只是喜欢瞎折腾,大家没事还是不要修改永久链接为好,实在要修改,也要做好301重定向。
修改当中上网搜索学习了一点正则表达式的基础知识,利用UltraEdit搜索了数据库中的内部链接并录制宏进行了替换,一共623处,幸好是学了点正则,不然岂不是累死。
末尾再次感谢枫叶的帮助,上次从bo-blog转到WordPress也是他给我做的重定向。
baidu对于301一直都不感冒,改的话谨慎再谨慎了。
回复
@bssn 都已经改了,它好像是不感冒哦,不管它了,反正我做了301更重要是不丢失以前的链接,等它慢慢恢复吧
回复
恭喜成功, 我现在想转到/year/month/的那种格式, 不知道可不可以弄到不丢失
回复
@偶爱偶家
为什么要那样转哦,那样转我觉得也不怎么好看呢,我建议你转成/postname/这种算了。
不过你说的那样转我邮件里面说那个插件是可以重定向的,不含分类都可以。
回复
[...] 坏链检查工具Xenu 2008年04月11日 工具-软件 昨天将博客的永久链接更改了,因为以前链接形式有不少内部引用,自己用临时学的几个正则表达式进行了替换,为了避免出现差错,顺便也检查了一下博客有没有坏链接,利用的工具是Xenu’s Link Sleuth,本来也有在线服务Dead-Links这种可以用来检查的,但是本地工具速度更快,报告更详细和易读。 [...]
我的丢失了一半,还好,呵呵
回复
@嘟嘟鱼 等一段时间就好了,3个月之后你网站的404抓取错误基本上都会消失的。
回复
[...] WordPress 2.5重定向大bug? 2008年04月15日 闲话-技术 1、换上WordPress2.5版本也有半个月的时间了,中途又改变过一次永久链接形式,当时就发现了当使用分类作为链接形式时,分类你可以随便输入也能够正常访问,比如: http://www.xxx.com/category/post的页面链接,你以该类错误网址也能正常访问: http://www.xxx.com/任意字符/post [...]
奇怪了,wp会自动生成.htaccess代码的 如果权限可写的话 .htaccess会自动生成,否则就把生成的代码自己复制过去就行了
回复
lxltop 回复于2008-04-21 00:14:
它生成的代码只能有限的进行改写,比如像我那样修改了固定链接后,就必须自己另外加重写规则的。
回复
为什么一旦我设置非?p=XXX 这样的永久链接,就会出现 CGI ERROR
回复
lxltop 回复于2008-07-04 16:28:
你的服务器主机是什么环境呢?支持重写吗?
回复
CmYkRgB123 回复于2008-07-04 19:53:
服务器是 Windows Server 2003 IIS 6.0 + PHP ( CGI模式 ) + ASP.net
“重写”是什么,不好意思,我不知道。
回复
lxltop 回复于2008-07-04 21:54:
IIS需要单独使用重写模块,它的规则我也不清楚,但可以肯定你的博客出错是服务器不支持重写,你可能需要再搜索看看。一般wordpress在Apache这些下工作最好,如果方便,以后换linux的虚拟主机吧。
回复
CmYkRgB123 回复于2008-07-05 14:13:
我也想这样,但是我的网站上还有一部分APS.net,linux貌似不行。
单独使用重写模块,是什么意思
回复
lxltop 回复于2008-07-05 14:34:
你看看这里有帮助没:
http://www.keephelp.com/fun/kongjian-iis-wodpress/
http://www.deanlee.cn/wordpress/url-rewriting-for-wordpress-under-iis/
诶,我现在是苦恼于后面有斜杠,后来发现当在地址栏漏输最后的 / 的话,就是找不到该页了。
后来我在永久链接里把最后的斜杠删除,就是弄成了 /blog/%postname% ,发现所有的文章链接是都没有最后的斜杠,但是都不能访问了。不得不改了回来。
当我改为/blog/%postname%.php时,发现页面链接又访问不了了,能告诉我可能是什么原因吗?怎么解决。谢谢。
回复
lxltop 回复于2008-08-23 11:32:
是不是你安装了什么插件?正常情况下就算你改了永久链接形式,也可以自动重定向过去的,漏输了也该能访问的,只是有一次重定向,你检查看看插件这些。
回复
不是插件的问题,我的插件都是我认识的,以前也是这些插件,后来我主机的朋友换了下IP就出现这问题了,诶,他也是很奇怪不知道什么原因。
回复
看了感觉不错。给你顶一个.
别忘了也来我的博客溜达下哦
继续溜达一下你的博客
回复
学习一下,
正要用永久连接。
回复
生是做网站的人。死是做网站的鬼。我的网站什么时候才有你网站的那么成功啊。羡慕中~~~不嫌弃的来个友情链接如何啊
回复
POSTNAME是中文的怎么办呢……现在我还只有用POSTID呢
回复
http://javadou.com/struts-hibernate-spring-interview-462/
这样的格式 看着舒服一点 但是我想弄成html格式的那种 想弄静态缓存
不知道在win主机下如何弄啊
回复
仔细研究下 还是有点晕
回复
我用的是默认的没怎么改
回复