我目前在我的 .htaccess 文件中使用 Rewriterule 将我网站上的每个 .php 页面更改为 .html。我也用它来改变搜索结果页面
www.example.com/search_page.php?city=name&state=name&id=1234
类似于
www.example.com/result-google-friendly-url-1234.html
一切正常,但是当我进行更改时,谷歌现在只索引我的索引页面。我认为这可能与我有 2 个指向同一页面的网址有关,而 google 决定不对任何一个进行索引。谷歌网站管理员说有 16 个页面“未选择”,然后说这可能归因于“规范化”,我不完全理解。
这些东西非常令人困惑,我有两件事要做:将每个页面扩展名从 php 更改为 html,然后将搜索结果页面从丑陋的 php 代码更改为干净的 html。我是否需要执行 301 重定向之类的其他操作来告诉 Google 发生了什么?这是我的 htaccess 文件:
Options -MultiViews +FollowSymLinks
RewriteEngine On
RewriteRule ^([.a-zA-Z\-]+)([0-9]+)\.html$ search_page.php?id=$2
RewriteRule ^(?![^/]+/)(.+)\.html$ $1.php [L]