Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 553697
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 13, 20262026-05-13T11:37:56+00:00 2026-05-13T11:37:56+00:00

I’m creating a site that allows users to add Keyword –> URL links. I

  • 0

I’m creating a site that allows users to add Keyword –> URL links. I want multiple users to be able to link to the same url (exactly the same, same object instance).

So if user 1 types in “http://www.facebook.com/index.php” and user 2 types in “http://facebook.com” and user 3 types in “www.facebook.com” how do I best “convert” them to what these all resolve to: “http://www.facebook.com/“

The back end is in Python…

How does a search engine keep track of URLs? Do they keep a URL then take what ever it resolves to or do they toss URLs that are different from what they resolve to and just care about the resolved version?

Thanks!!!

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-13T11:37:57+00:00Added an answer on May 13, 2026 at 11:37 am

    So if user 1 types in “http://www.facebook.com/index.php” and user 2 types in “http://facebook.com” and user 3 types in “www.facebook.com” how do I best “convert” them to what these all resolve to: “http://www.facebook.com/“

    You’d resolve user 3 by fixing up invalid URLs. www.facebook.com isn’t a URL, but you can guess that http:// should go on the start. An empty path part is the same as the / path, so you can be sure that needs to go on the end too. A good URL parser should be able to do this bit.

    You could resolve user 2 by making a HTTP HEAD request to the URL. If it comes back with a status code of 301, you’ve got a permanent redirect to the real URL in the Location response header. Facebook does this to send facebook.com traffic to www.facebook.com, and it’s definitely something that sites should be doing (even though in the real world many aren’t). You might allow consider allowing other redirect status codes in the 3xx family to do the same; it’s not really the right thing to do, but some sites use 302 instead of 301 for the redirect because they’re a bit thick.

    If you have the time and network resources (plus more code to prevent the feature being abused to DoS you or others), you could also consider GETting the target web page and parsing it (assuming it turns out ot be HTML). If there is a <link rel="canonical" href="..." /> element in the page, you should also treat that URL as being the proper one. (View Source: Stack Overflow does this.)

    However, unfortunately, user 1’s case cannot be resolved. Facebook is serving a page at / and a page at /index.php, and though we can look at them and say they’re the same, there is no technical method to describe that relationship. In an ideal world Facebook would include either a 301 redirect response or a <link rel="canonical" /> to tell people that / was the proper format URL to access a particular resource rather than /index.php (or vice versa). But they don’t, and in fact most database-driven web sites don’t do this yet either.

    To get around this, some search engines(*) compare the content at different [sub]domains, and to a limited extent also different paths on the same host, and guess that they’re the same if the content is sufficiently similar. Of course this is a lot of work, requires a lot of storage and processing, and is ultimately not terribly reliable.

    I wouldn’t really bother with much of this, beyond fixing up URLs like in the user 3 case. From your description it doesn’t seem that essential that pages that “are the same” have to share actual identity, unless there’s a particular use-case you haven’t mentioned.

    (*: well, Google anyway; more traditional ones traditionally didn’t and would happily serve up multiple links for the same page, but I’d assume the other majors are doing something similar now.)

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

No related questions found

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.