其实关于Phpcms伪静态之后,文章页URL地址串联的问题早在去年就发现了,在写完《Phpcms v9 列表页、内容页目录式(拼音格式)伪静态》一文之后就发现了这个问题,主要问题就是出在内容页URL地址:{$catdir}/{$id}.html的{$catdir}这个地方,当同你打开一篇内容页的URL的时候,把栏目目录地址换成其他栏目的目录拼音,按照正常的来说是会出现404错误的,但是你更换了栏目目录没有换文章页的ID,结果仍然停留在你原本打开的文章页,不知道表达清楚意思没有,接下来看下面两张截图对比就明白意思了。

这里借用了Phpcmsx官网的链接举例说明,这个是真实的文章页链接:

这就是上面所说的他的文章页是域名/栏目拼音/文章ID这样的伪静态规则。当我把列表栏目拼音换成别的栏目拼音,而这篇文章的ID不作修改,看下图:

仍然还是前面那篇文章。

这样的BUG,其实对于网站的SEO优化来说,我觉得是不太友好的,一篇文章居然可以有多个URL,确实是不利于搜索引擎优化的。

那么如何解决Phpcms伪静态文章页URL地址串联的问题呢?

其实最简单的一个方案就是栏目页面的伪静态可以不用修改,主要是对文章页面的伪静态稍作修改就OK了,这里我们可以借鉴原来官方的伪静态做法。

服务器端伪静态规则里将文章页面的伪静态规则修改为:RewriteRule ^zixun-([0-9]+)-([0-9]+)-([0-9]+).html index.php?m=content&c=index&a=show&catid=$1&id=$2&page=$3

网站后台里的URL规则管理里面将原来设置的内容页的{$catdir}/{$id}.html|{$catdir}/{$id}-{$page}.html修改为:zixun-{$catid}-{$id}-{$page}.html

以上就是发现的Phpcms伪静态文章页URL地址串联的问题及简单解决方案。其实不光发现了Phpcmsx存在这样的情况,发现了不少用Phpcms建站的网站都出现了这样的情况,或许是他们在建站的时候基本就没有发现这个问题吧。这个问题对于搜索引擎来说还是有一定影响的,希望这些站长能早日发现这个问题,并及时进行解决修正。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。