我的网站的网址问题

时间:2011-07-06 06:21:02

标签: .net asp.net url

我有一个页面,我提供了一个特定的产品(书籍,CD等),如下所示:

  

http://gramma.ro/Site/DetaliiProdus.aspx?c=m1&p=1493&s1=40&s2=71

我不明白为什么,有时,有些机器人尝试使用以下网址访问这些详细信息页面:

http://gramma.ro/Site/DetaliiProdus.aspx?c=m1&p=1493&s1=40&s2=71

当然,这个网址不再像通常的网址那样在ASP.NET中解释,因此我无法像往常一样提取参数(Request.QueryString)......

  1. 您是否知道此机器人如何以这种方式扫描网站?因为在我的网站上没有任何地方我将&替换为&

  2. 你看到了解决方法吗?对于初始请求,我无法动态替换& & ...

  3. Ps :哦,是的,我知道如果我写url重写我不再有这样的问题,但我现在无法改变所有网站只是因为这...

1 个答案:

答案 0 :(得分:0)

  1. 你能在IIS日志中看到什么样的机器人?可能是一个不重要的,所以你可以简单地忽略它。

  2. 作为一种相对简单的解决方法,您可以像这样进行URL重写(取决于您可以调整的QueryString组合):检查

    (.*)&(.*)&(.*)&(.*)
    
  3. 并重定向到(类似 - 尚未经过测试)

      

    {R:1}&安培; {R:2}&安培; {R:3}&安培; {R:4}

    如果有不同数量的QueryString参数,您可以编写不同的规则,从最高金额开始(或找到更好的规则)。这可以在不改变整个网站的情况下完成。

    但首先我会寻找其他原因。

    第三种方式(也许最好的方法)是使用“SEO友好的URL”而不是可见的QueryStrings。它也可能有助于你的排名。查看http://weblogs.asp.net/scottgu/archive/2007/02/26/tip-trick-url-rewriting-with-asp-net.aspx(或许多其他网站)以获取更多信息。