Google新闻 - 网址计划和主键

时间:2011-07-03 22:25:44

标签: php mysql database seo

根据谷歌的说法,允许您的文章/新闻出现在Google新闻中:

  

显示三位数字。网址   每篇文章必须包含一个唯一的   数字至少由三个组成   数字。例如,我们无法抓取   有这个网址的文章:   http://www.google.com/news/article23.html。   但是,我们可以抓一篇文章   这个网址:   http://www.google.com/news/article234.html。   请记住,如果唯一的数字   在文章中由一个孤立的   以199开头的四位数字   或200,我们将无法抓取它。   请注意,此规则已被免除   新闻站点地图。

我的网址如下:

http://www.mydomain.com/news/91/this-is-news-title

谷歌不会接受此消息,因为新闻ID未达到119或200

那么可以做些什么来改变主键以200开头呢?我已经有91篇文章(从1到91)。

有没有办法可以将NewsID 1变为200,NewsID 2变为201.另外,我需要将旧文章ID的301重定向添加到新ID?

我的网站是用PHP和MySQL数据库中的新闻数据开发的

2 个答案:

答案 0 :(得分:1)

添加前导零,所以你有:

http://www.mydomain.com/news/091/this-is-news-title

Puting 091而不是91会将其变为3位数字,并且可以抓取。

希望这会有所帮助。干杯

答案 1 :(得分:1)

对于SQL部分,我想你可以这样做:

UPDATE news_table SET id=id+199 WHERE id<=91;

但是,如果Google遇到以199或200开头的孤立四位数字的问题,那么您应该从2101开始。相关的SQL更新子句将是:

UPDATE news_table SET id=id+2100 WHERE id<=91;

对于重定向部分,假设您使用mod_rewrite运行Apache,类似于:

RewriteEngine On
RewriteRule ^/news/([0-9]{1})/(.*)$ http://www.mydomain.com/news/210$1/$2 [R=301, L]
RewriteRule ^/news/([0-9]{2})/(.*)$ http://www.mydomain.com/news/21$1/$2 [R=301, L]

不是100%肯定这些。显然,您希望在开发环境中测试所有这些。