关于固态链接与伪静态的做法

发布于 2019-06-18  665 次阅读


常用固定链接标签

%year%、%monthnum%、%day%、%hour%、%minute%、%second% :这几个标签是用来在固定链接中显示文章发布时间的。感觉没啥用处,还显得链接过长影响美观。而且更重要的是链接中带有日期再次更新文章的话链接可能会变,原有链接就成了死链,新链接还需要等待重新收录。

%category%:链接中带分类目录名。这个标签尽量也不要使用,因为网站内容的交叉,很多内容可能同属于不同的分类下,而如果我们链接中带有分类目录名、文章又属于不同的分类,很容易引起文章内容重复或冲突。

%author%:链接中带有作者名。这个可有可无,全凭大家喜好了,不过为了网站链接的简练我的博客固定链接上并没有带有作者名。

%postname%:链接中带有别名。我之前使用的一种固定链接形式,一般情况下我们编辑文章时会有一个文章名,同时WordPress会自动根据文章名生成别名,但是由于汉字字符容易乱码以及后期各种问题的原因,之前我是使用代码将别名直接翻译成英文的,后来由于调用百度翻译API严重影响网站速度就弃了。而且百度直译的别名有些长,不美观。

%post_id%:以文章ID作为固定链接。我目前乃至日后决定使用的一种固定链接方式,优点是链接简练美观,纯数字的链接后期不会因为中文字符的原因引发各种问题,比如404。缺点是很难通过链接联系到文章内容。

关于伪静态

WordPress是一款由PHP驱动的博客程序,其生成网页文件是动态的,我们可以通过 WP Super Cache 或其他静态化缓存插件实现伪静态,但是相对于真正的静态网页文件,WordPress生成的网站链接默认是不带有“.html”扩展名的,然而对于大多数访客来说,似乎只有带“.html”的才能叫做网页,当然还有一种说法是静态网页文件有利于搜索引擎收录, 具体效果我没测试过不知道。既然都说这么好我也借着这次更改固定链接的机会一块给加上了“.html”。具体添加方式是:

默认自定义固定链接:http://blog.quietguoguo.com/%post_id%/

添加.html扩展名链接:http://blog.quietguoguo.com/%post_id%.html

相信大家也看出来了,只要删除最后一个“/”然后添加上.html即可,这里我是在文章ID后面添加的,其他固定链接格式与这一样。

如果nginx没有设置伪静态,会报404的错误,需要在nginx.conf的server中定义伪静态
 if ($args ~ "^(.*)$"){
set $rule_0 1$rule_0;
set $bref_1 $1;
}
if ($rule_0 = "1"){
##如修改 https://www.liujutan.com/1455===>https://www.liujutan.com/1455.html
##对应的写法为rewrite ^/([0-9a-zA-Z]+).html$ /index.php?_a=$1&_m=index&$bref_1 last;
rewrite ^/([0-9a-zA-Z]+).html$ /index.php?_a=$1&_m=index&$bref_1 last;

}

关于更多的伪静态的知识后续补充

tan
项目教程已完成,下面是我个人的总结尚未成熟就不分享了,请理解!
请联系tan拿密码“123”或者登录管理员账号
来源:
https://blog.quietguoguo.com/1985.html
https://www.cnblogs.com/hefei/p/5509247.html