Mod rewrite mod rewrite php到未索引的html url

Mod rewrite mod rewrite php到未索引的html url,mod-rewrite,url-rewriting,seo,Mod Rewrite,Url Rewriting,Seo,我目前正在使用.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 一切正常,但当我做出改变时,谷歌现在只为我的索引页面编制索引。我认为这可能与我有两个指向同一页面的URL有

我目前正在使用.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
一切正常,但当我做出改变时,谷歌现在只为我的索引页面编制索引。我认为这可能与我有两个指向同一页面的URL有关,而谷歌决定不对其中任何一个建立索引。谷歌网站管理员说有16个页面“未被选中”,然后说这可能是因为“规范化”,我不完全理解

这是非常令人困惑的,我有两件事要做:将每个页面扩展从php更改为html,然后将搜索结果页面从难看的php代码更改为干净的html。我是否需要做一些其他事情,比如301重定向来告诉谷歌发生了什么?这是我的htaccess文件:

Options -MultiViews +FollowSymLinks
RewriteEngine On    
RewriteRule ^([.a-zA-Z\-]+)([0-9]+)\.html$ search_page.php?id=$2
RewriteRule ^(?![^/]+/)(.+)\.html$ $1.php [L]

从来没有找到一个让谷歌自己为我的网站编制索引的解决方案。不过,我确实编写了一个php脚本,在我的网站上打印出了所有7000个动态页面,并将其作为谷歌网站管理员工具上的网站地图提交,这很有效。所以我想网站地图才是真正的解决方案