I disagree that an integer key is ALWAYS best. Sure, it's faster to look up by an integer. But if, in fact, the accesses that you have to do will always or almost always be a text value, then the fact that if you had the record id to look up by, it would be much faster, is pretty much irrelevant. On the order of, If only you knew the winning lottery number in advance, you could buy the ticket with that number and be rich. An unquestionably true statement, but not useful if you don't happen to have the winning lottery number in advance.
So the real question is: What do you need to store in YOUR database, and how do YOU have to access it? If 99% of your accesses will be, "take a URL and look up a record", then using the URL or something you derive from the URL is arguably a good idea.
My main argument against it is not that it is a string, but that it is a string that combines many different facts. Do you ever care about the pieces? Like, would you ever want to say, "Find me all the Fords"? If so, then having "Ford" stuck in the middle of the primary key is a very very bad idea. The only way to find all Fords would then be a full-file sequential search looking for the characters "Ford" in the middle of the key. Ugly. Much better to have a separate "make" field that you can search on.
I don't know your application, but I suspect that going from a URL to a record is NOT the only access. Isn't there some sort of browse or search function, where a user might say, "Find me all the convertibles that are less then 10 years old" or some such? If so, you really need to break data out into individual fields to be able to search.
Also, what data do you get when you retrieve this URL? Are you getting just one record and displaying it, or are there many records hanging off it? If there are related records, then if the URL is the primary key of the "starting" record, then all these related records will also have to hold that big URL as a foreign key. This could get messy. You should consider the overall structure of your database -- what tables you need and how they are related -- before you decide on indexes. (Hey, this sounds like a good place to add a shameless plug for my book, "A Sane Approach to Database Design", where I discuss design considerations and the order in which you should make design decisions.)
A detail, but potentially a big one: Do you really need the subdivision names in there along with the values? That is, instead of making the URL "website.com/Type/Car/Country/Usa/Manufacturer/Ford/Year/2007", couldn't it just be "website.com/Car/Usa/Ford/2007" ? That would eliminate a lot of redundant text. And by the way, if you're only dealing with one website, so that all your URLs begin "website.com", then surely you don't need to store this in every record. Oh, and is the order significant? Can someone give the URL "webiste.com/Year/2007/Type/Car/Manufacturer/Ford/Country/Usa" and get the same information? If so, things get much more complicated.
Are there things other than motor vehicles in there? Like, can there be "website.com/Type/Pet/Kind/Dog/Breed/Poodle" or some such? (Or leaving out the labels, "/Pet/Dog/Poodle".) If so, a generic scheme of using the URL looks a little better than a more specific scheme that tries to break it out into individual fields. Maybe.