Open Bug 165876 Opened 22 years ago Updated 14 years ago

DNS behavior of Mozilla needs improvement

Categories

(SeaMonkey :: Location Bar, enhancement)

enhancement
Not set
normal

Tracking

(Not tracked)

People

(Reporter: spamcop, Unassigned)

Details

I think of the following preferences:

[_] DNS Auto Complete
    Append to front: [___www.___]
    Append to  back: [___.com___]
     
[_] Auto Keyword Search
[_] Manual Keyword Search
    Keyword Identifier: [___go___]

Keyword Search URL:
[http://www.google.com/search?q=____]


And the following behavior:

1. I enter something into the address bar and hit enter.

2. Mozilla checks if Manual Keyword Search is enabled and if yes, it checks the
first word of the address bar, whether it matches the Keyword Identifier or not,
if it matches, we continue at (8).

3. Mozilla checks if that *can* actually be an URL or valid domain name. If it
contains spaces or other characters not allowed in domain names, it's not and in
that case Mozilla continues at (7).

4. Mozilla makes a DNS querry for the content of the address bar. If a valid DNS
entry is found, Mozilla can access the server. We continue at (A). Otherwise the
search goes on.

5. Mozilla checks if DNS auto complete is enabled. If not, we continue at (7).

6. Mozilla appends whatever is in the two text fields to front and back and runs
anotehr DNS querry. If this time a DNS entry is found, we continue at (A).
Otherwise the search goes on.

7. Mozilla checks if Auto Keyword Search is enabled. If not, Mozilla prints out
the error message that no DNS entry could be found for what the user entered.

8. Mozilla takes the Keyword URL and appends the user input of the address bar
to it, but of course it is encoded like in case of a GET request (spaces are
converted to %20 and so on) and tries to open that address.

9. This means Mozilla will finally run a DNS querry for the server used as
keyword server, most likely find it and request a search result. Of course one
could use Google's "I'm feeling Lucky" to immitate the current keyword behavior
to immediately jump to the best match.

(A) We found a server, now Mozilla can make other guesses. E.g. if no protocol
is specified, just a domain name, http:// is added to front and / to end, also
port 80 is assumed. This is how people expect a server to react. But this is
already Networking:HTTP


The current situation to have only a single preference (Internet Keyword) and to
be forced to specify the URL directly in the Prefs file, further to have no
control about what is appended or if something is appended and what identifier
is used to force a keyword search or if one is used at all, is highly user
unfriendly and makes the browser behaving oddly IMHO.

There are up to 50 bugs focused on DNS guessing, Internet Keyword or the
searching abilities of Mozilla. But basically evertyhing they demand is
summarized here.

Allowing multiple identifiers for different Keyword URLs would be even nicer,
but maybe a bit hard to implement in the preferences. In any case it would only
affect the first step on this list.
Can I just point out that Mozilla already has a very cool URL Bar to bookmark
linking system, which allows (for example) me to type "google <term>", or "bug
<bug number>" and Moz knows exactly what to do with it. For how to use this, see
http://www.mozilla.org/docs/end-user/keywords.html

As to the "manual keyword" search - I'm sure you can see that as a single
bookmark using the custom keywords feature.

I would, however, agree that the auto-prefix/suffix prefs do need some sort of
UI to at least edit them, if not turn the feature on and off too.

Also, on a Bugzilla-use style guide note; generally it is not use or help to
file a bug listing most than one single bug/enhancement *unless* it is a meta
bug for tracking the actual bugs pertaining to the individual items - in which
case, those individual bugs should be marked as blocking the meta bug.
Sorry, but like I see it the way Mozilla does it right now is quirky. And minor
improvements here and there will not make it any better. I think some things
need re-design from the very base and all the other bugs currently focus on
fixing this and that, while in fact, all these problems wouldn't even exist if
Mozilla would work like described here. My suggested "enhancement" is a
completley re-design of the DNS querry code, which is just *one* enhancement and
thus it is just one bug (even though this single bug will make about 50 other
bugs and hundreds of duplicates obsolet over night).

I know that Mozilla currently knows the keyword "go" for Internet Keyword
searches, but this only works if Internet Keyword is enabled in the preferences,
but enabling this, also enables auto keyword searches. Why can't I have Mozilla
performing a keyword search if I enter "go" followed by keywords into the
address bar, without being forced to enable auto keyword searches, which may be
highly undesired (if I make a typo in a domain name, I might want to get an
error message and not being taken to one completley unrelated page!).

And why must it be "go"? What if I don't like "go", but desire some different
behavior? And why must Internet Keywords take the best match of Netscape's
search engine, why not the best match of Google? Well, there is a preference for
that, but you can't set it from within the preferences screen... why not?

Also why can't I still disable DNS guessing? I hate DNS guessing, because I
hardly ever access *.com pages (not being an US surfer). Most international
pages I access are .net and .org, all other ones are country domains within
Europe. If I enable Internet Keywords, DNS guessing is disabled, but what if I
want to have both enabled? Who says these two must be mutally exclusive?

I see four kinds of DNS querries:

1) *Real* DNS querries
2) Guessed DNS querries
3) Manual Keyword Searches
4) Automatic Keyword Searches

Only the first one is what a browser has to be able to do. The other ones should
be optionally and there should be preferences to enable/disable them. None of
these are mutually exclusive, you can enable all of the last three, disable all
of the last three or enable some and disable some.

The behavior I described before will make sure that one feature does not
conflict with any other feature; so it's safe to have them all enabled.

Using bookmarks for keywords is fine, if you therefor remove Internet Keywords
completely from the preferences and also remove it from Mozilla; but it will be
harder to use for users, that aren't even aware of Mozilla's ability to give
bookmarks a keyword. But it would only make the (3) obsolet, it will not make
(4) obsolet. If automatic searches are still offered in the future, they must be
easily customizable for users and if there is still a keyword for them, this
keyword must be customizable, too. If Internet Keywords is removed completley,
than (4) is obsolet as well and only (1) and (2) are left over. But then (2)
must be customizable and there must be a way to disable it.
-> URLbar
Assignee: new-network-bugs → hewitt
Component: Networking → URL Bar
QA Contact: benc → claudius
A side comment:

Right now, I'm having the problem that Firefox is attaching www and .com to an address that would resolve without it, is firefox were paying attention to the contents of my resolv.conf. It's a machine inside my network, and I can ping the relative address.

Since a very large number of people now move in and out of networks freely, switching from wired to wireless in the office, or switching to a VPN connection, it's vital the firefox *never* cache a model of the network state. It can trivially change while you are running. It can change while you are downloading pages.

Product: Core → SeaMonkey
Assignee: hewitt → nobody
QA Contact: claudius → location-bar
Speaking of DNS improvements, I'd like to see the lookup request go out soon during the auto-complete process. google-chrome does this and makes for a very fast loading page, cutting down the process even further. By the time you hit enter the browser will very likely have already decided on the IP to go to. (dns request is complete.)

Perhaps a network.dns.toolbar-prefetch boolean value, and a few others for the items you mentioned to give a more manual feel to everything. I think some form of auto complete is necessary to pull off a dns pretech toolbar concept though.
You need to log in before you can comment on or make changes to this bug.