From MozillaZine Knowledge Base
The term "default browser" is used to describe the URL and file associations that determine which web browser is launched when you open an Internet shortcut or HTML file or when you click a link in a mail application like Thunderbird or Outlook Express, if you have more than one web browser installed on your system.
Note that MSN Messenger and other applications may be "hard-coded" to open Internet Explorer, no matter which browser is set as the default. Also, Internet service providers like PeoplePC Online, Juno and NetZero may provide connection software that automatically launches Internet Explorer.
When multiple browsers are installed, you can start any browser and use it, without needing to make it your default browser. The default applies to which browser will open when you open an HTML document or when another application asks to open a web page. You would normally set a default browser by using the options or preference settings within that web browser, for example:
Examples of options to set a non-Mozilla browser as the default, on Windows:
Make sure that only one browser is set to check if it is the default. If those settings don't work, try setting another browser as the default browser, then reset your preferred browser as the default. Other suggestions are listed below.
Note: If you have the ThunderBrowse add-on for Thunderbird installed and want to open a link in a browser, click on the ThunderBrowse button in the status bar (or disable/uninstall that add-on). Thunderbird will use the default browser if the button has a red line through it. Additionally, you can also right click anywhere in the page or on a link and choose the "Visit in Browser" menu item. ThunderBrowse will launch the link in an external browser.
Use the options or preference settings within your Mozilla browser as shown above, to set Firefox or Mozilla Suite/SeaMonkey as the default browser. If that doesn't work, try the following:
If a test version of IE7 is installed
This applies to Windows XP only.
Force Firefox to make itself the default
If Firefox already thinks that it is default, exit Firefox completely, go to "Start Menu -> Run" and enter this into the text box:
firefox.exe -silent -setDefaultBrowser
Reset SeaMonkey as the default
If another browser has been set as the default browser, including Internet Explorer 7, Firefox 3, or Opera 9, you may be unable to reset SeaMonkey as the default. As a workaround, install Firefox 2.0.0.x (available here) and make it the default browser, then open SeaMonkey and set it as the default. 
Using Default Programs - Windows 7 and Vista
To set your Mozilla browser as the default program on Windows Vista and above, go to "Start -> Default Programs -> Set your default programs", find your Mozilla browser in the list of programs and set it as the default. This will not affect the defaults for other user accounts on your computer.  
Using Set Program Access and Defaults
You can set the default browser using the feature, "Set Program Access and Defaults" on Windows 2000 and XP. On Windows Vista and above, this feature is renamed "Set Program Access and Computer Defaults" and can be used to change the default for all users of the computer, if you are logged into Windows as an administrator. 
(On Windows XP and above, click the icon to the right of "Custom", to expand the category.)
You will see Internet Explorer and other installed browsers listed under "Choose a default Web browser" . Select "Mozilla" (Suite), "SeaMonkey" or "Mozilla Firefox" (in some cases, "Mozilla Firefox" may not be listed; to add it back, reinstall Firefox ).
Setting default browser manually
You can manually set the default browser by selecting it as the the default program for individual file types and protocols, as follows:
Assign the following protocols and file types to the browser you wish to set as default:
In Windows XP and earlier, you can find the URL protocols listed above in File Types, under extension "N/A" or "(NONE)".
Using a third-party utility
A third-party utility to set the default browser will save you a lot of work by automating the steps for you. The freeware utilities DefaultBrowser and SetBrowser will work for Firefox and Mozilla Suite as well as other installed browsers.
This may be slightly different, depending on which distribution you are using.
If you don't notice the "Web browser" component:
Fedora Core 3
If you want the URLs to open in a new tab instead of new window, you need to modify different script:
exec $MOZ_CLIENT_PROGRAM $MOZ_CLIENT_PROGRAM_PARAM "openurl($opt,new-window)" 2>/dev/null >/dev/null
exec $MOZ_CLIENT_PROGRAM $MOZ_CLIENT_PROGRAM_PARAM "openurl($opt,new-tab)" 2>/dev/null >/dev/null
If you want to make Mozilla Firefox your default browser, point the symlink /etc/alternatives/x-www-browser to /usr/bin/mozilla-firefox or other path where Mozilla Firefox is installed. One easy way to do this is to execute the following command as root:
update-alternatives --config x-www-browser
Doing so will present you with a list of installed browsers from which you can select Firefox.
Setting the browser that opens in Thunderbird - Linux
If you are unable to launch Firefox (or another Mozilla browser) from URL links in a Thunderbird mail message, or if you want to change the browser that is launched, add the following lines to the user.js file, located in your Thunderbird profile folder (you may need to create the user.js file). Change the path of the Firefox executable, if yours is not /usr/bin/firefox.  
user_pref("network.protocol-handler.app.http", "/usr/bin/firefox"); user_pref("network.protocol-handler.app.https", "/usr/bin/firefox"); user_pref("network.protocol-handler.app.ftp", "/usr/bin/firefox");
If you are still unable to change the browser after modifying these settings, editing the mimeTypes.rdf file, also located in your Profile folder, can fix the problem. Simply use a text editor to search for all references to the browser that links are currently opening in and replace them with references to the browser that you would like links to open in.
If there are no references to browsers to be replaced in the mimeTypes.rdf file, then adding some new sections to this file can fix the problem. Rather than directly editing the file, you can get Thunderbird to automatically add the required sections as follows:
Having completed these steps, the next time you click on an http, https or ftp link in Thunderbird, you will be presented with the "Launch Application" window. Press the "Choose" button on this window to select your browser of choice. This will add the required entry to the mimeTypes.rdf file. This is a one-time task; having selected the browser once, links of the same type will now always be opened with the selected browser.
Mac OS X
Related bug reports