代码之家  ›  专栏  ›  技术社区  ›  Pepper

保存URL时保留或放弃“www”?

  •  3
  • Pepper  · 技术社区  · 15 年前

    我在php5中创建了一个应用程序,它需要为一个网站存储一个唯一的URL。例如,如果用户输入“ http://www.google.com/ “我将它存储在数据库中作为” Google网站 “分析之后。基本上,我需要一个统一的URL约定,这样同一个站点就不会有多个条目。

    基本上,是否可以从输入的所有URL中删除“www”?或者我应该保留它?

    我很想听听你的意见。

    事先谢谢!

    9 回复  |  直到 15 年前
        1
  •  11
  •   Michael Petrotta user3140870    15 年前

    虽然区别并不总是重要的, www. Google 引用的DNS条目与 Google网站 可能会返回不同的数据。你看 www. Fuff.com 例如,偶尔在野外,以及 Foo.com 可能由于奇怪的负载平衡原因而重定向到它。

    所以,坏主意。

        2
  •  7
  •   nickf    15 年前

    保存它。这是两个不同的网址 网站也一样。它唯一的危害是4字节的数据,所以没有好的技术理由不存储它。当你在那里的时候,最好不要丢弃协议(“http://”)。

    向最终用户显示URL时, 那是 当我脱掉 http://www ."

        3
  •  4
  •   Greg Hewgill    15 年前

    一种方法可能是对站点执行get操作,并存储收到的任何重定向的结果。所以,如果你有这样一个网站 www.stackoverflow.com 重定向到 stackoverflow.com ,您将只存储一次规范的URL。

    不要假设网站所有者想要什么,让他们告诉你。

        4
  •  2
  •   Ponkadoodle    15 年前

    这取决于你所说的“同一个网站”。anything.sitename.com与www.sitename.com属于同一个人。实际上,anything.sitename.com是www.sitename.com的子域

    大多数时候,

    www.sitename.com == sitename.com
    

    但是,

    blog.sitename.com != sitename.com
    
        5
  •  1
  •   Joel Etherton    15 年前

    你真的很难存储4个字节的数据吗?大概不会。这看起来像是一个节省空间的功能,但是一旦你遇到一个非www站点没有别名的URL,你就必须围绕它进行编码。然后,当你有了除了WWW以外的子域的URL时,你也必须围绕这些子域进行编码。

    从长远来看,最好是保持URL的原样,并将其吸收到原始存储中,除非您要存储数亿个URL。

        6
  •  1
  •   AJ.    15 年前

    如果您考虑/关心一些网站/应用程序在www.domain.com和domain.com上提供相同的内容,而有些网站/应用程序不提供相同的内容,那么截断www可能不是一个好的假设。

        7
  •  1
  •   Jonathan    15 年前
        8
  •  1
  •   nobody    15 年前

    如果你想在同一个域上有几个子域,最好保留它。这可能有助于降低您的请求带宽。

    例如:

    http://www.google.com
    http://maps.google.com

    在这种情况下,当你去谷歌地图时,来自www网站的cookie不会在每次请求时免费发送。

        9
  •  0
  •   Igor Zevaka    15 年前

    不像 http:// , www 在100%的情况下不假设。事实上 万维网 在大多数情况下是 foo.com .部署网站的方法多种多样,因此裸域与 万维网 . 最流行的两种是DNS别名,其中 万维网 是与顶级域和HTTP重定向相同的子域,其中 Foo.com 是不同于的虚拟目录 www.foo.com 并且有一个页面可以将所有流量重定向到 网址:www.foo.com .

    所以,不,脱衣是不安全的 万维网 因为它是同一个URL的裸露版本的不同地址。另外,对于那些使用HTTP重定向方法的网站,您还可能会产生重定向成本,例如。 http://google.com .