Django googlebot抓取ajax网址

时间:2014-11-21 02:32:35

标签: ajax django url googlebot

我已经设置了一个Django站点,并从GoogleBot收到此警报,我认为它在我的URL中放入测试参数(零)。零是我的数据库中的不存在的主键

<WSGIRequest
path:/for_sale_detail/0/,
GET:<QueryDict: {}>,
POST:<QueryDict: {}>,
COOKIES:{},
META:{u'CSRF_COOKIE': u'xxxxxxxxxxxxxxxxx',
'HTTP_ACCEPT': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
'HTTP_ACCEPT_ENCODING': 'gzip,deflate',
'HTTP_CONNECTION': 'close',
'HTTP_FROM': 'googlebot(at)googlebot.com',
'HTTP_HOST': 'example.com',
'HTTP_USER_AGENT': 'Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)',

这是我的url.py,第一组数字是我的主键(下面的例子是数字2):

url(r'^for_sale_detail/(?P<slug>[-\w\d]+)/$', for_sale_detail, name='for_sale_detail'),

在我的html文件中,以这种方式调用ajax URL(用户交互后填充的动态内容):

var slug = '2-terrace-link-house';

for (abc < 10)
{
    ...
    slug = new_url;
    call_detail_page(); 
}

function call_detail_page()
{
    var detail_page_url = "{% url 'for_sale_detail' '2-terrace-link-house' %}".replace ('2-terrace-link-house', slug);

     $.colorbox({
        iframe : true,      
        width : '1200px',
        height : '600px',           
        href:detail_page_url
        });     
}

我创建了sitemap.xml文件以指向所有有效的slug地址,但是当GoogleBot抓取时,它会将“0”附加到我的URL slug。理想情况下,我希望所有细节页面都被谷歌索引和找到,因此不希望将GoogleBot重定向到不存在的页面

有效的网址是:

http://www.example.com/for_sale_detail/2-terrace-link-house

谢谢

1 个答案:

答案 0 :(得分:0)

如果项目存在,您可以查看for_sale_detail,如果没有则返回HttpResponseNotFound或者Http404 exception