我有一个页面在索引视图中列出视频。这个视图可以通过几个指标过滤,比如“最新视频第一”和“排名最高的视频第一”。用户可以从这些选项中进行选择。
过滤器信息存储在用户会话中。要控制会话参数,有不同的路由,当用户单击筛选按钮时,会调用这些路由,如“domain.com/视频/最新”或“domain.com/视频/排名”。
取决于调用哪个路由,服务器更改会话参数。
事实上,呈现相同的页面,但视频按不同的顺序列出。这导致重复的页面标题,元描述和诸如此类的事情。应该避免这种情况。我想有一个路线“domain.com/视频”,没有额外的过滤器控制参数。
显然,有不同的办法:
domain.com/videos?filter=newest这样的GET参数,从SEO的角度来看也不是很好。是否有解决上述问题的建议?
更新
@Tim建议(非常感谢您的答复):
如果不需要URL参数,可以执行POST请求,将这些过滤器/搜索/排序值存储在Laravel的会话中,然后在GET请求中引用它们;$sort = session ()->get(“排序”);或类似的。它们不会出现在URL中,SEO唯一知道的页面是domain.com/视频
还有更多的人来确认吗?
发布于 2019-06-11 17:15:36
与其担心GET参数,不如为视频页面设置一个规范链接,将其输出到所有过滤过的路由上:
<link rel="canonical" href="http://example.com/videos">这将防止对相同内容的其他视图进行索引。
https://stackoverflow.com/questions/56547303
复制相似问题