There's two sides to the problem - getting a search engine (ie google) to find your site, and then making sure that when the site is indexed, it gets indexed under relevant search terms, so it shows up when people actually search for it.
The second part of the issue is what's fairly commonly known as "Search Engine Optimization (SEO)" and can be a bit of a black art. There are thousands of companies that specialise in SEO, most of which use fairly underhand "black-hat" techniques that are questionable at best, and charge a pretty penny for it too, but there are plenty of things that you can do to improve your search rankings.
No amount of SEO though will help if your site doesn't get picked up by a search engine in the first place though.
In the good old days, you used to be able to "submit" your site to search engines, and their spiders would dutifully go away, spider the site and then add it to the index. The main search sites crawl around the web, automatically adding sites to their indexes that they find linked from other sites.
So, the first step to getting listed is to get as many *good* incoming links to your site as possible. Speak to everyone you know that has a site that's indexed in google already (check on
www.google.com/webmasters/tools/sitestatus to see a site's status in the index) and get them to link to you. Sites that update frequently (weblogs in particular) are frequently reindexed on google, so if you can get a few links in from a good ranking weblog, you'll make google's index pretty quickly.
There's also the Open Directory Project, which is an open source yahoo-alike web directory (http://www.dmoz.org/). Its directory is maintained by human volunteers, and is used on a lot of sites (including Google). You can submit your site to it, and if you get listed (which can take a wee while) it'll help too.
Once your site's indexed (if you've access to the site access logs, keep an eye out for any visits from the main search engines' spidering bots - eg googlebot, yahoo slurp, msnbot etc), it's important to look at the underlying structure of the site to make sure that it's *properly* indexed.
Firstly, it's all about the content. As much relevant text as possible. Think about what potential visitors would be searching for, and make sure you include that text on your site. Site spiders also pay a lot of attention to the underlying markup of a site, placing more emphasis on content in headers than in the body of an element, and so on. The actual algorithms that the engines use are secret, but following good standards-based design techniques is the best way to go.
Steer clear of table-based layouts, frames and old techniques like image maps, which are very unfriendly to search engines. Keep your markup clean and logical, keep graphical elements either in the css (if they're purely presentational and have no *meaning*) or make sure they're marked up correctly, with relevant ALT and TITLE attributes.
If you're using a graphical tool like Dreamweaver or Frontpage to generate your site, it'll do you a lot of good to go through it's markup and check that it's all OK. These tools (whilst they've got better) still generate an unhealthy dose of crap a lot of the time, and there's no substitute for clean, standards-based hand-written markup. None. Making sure you use the correct (X)HTML elements for your content is also important. If a heading is a heading, it's important to make sure it's marked up as one of the HTML <hx .. /> elements, not as something else. Likewise, a list should be marked up as such, paragraphs as paragraphs etc. Although some folks might try to tell you otherwise, search engines *do* pay attention to the site's markup when indexing.
The HTML TITLE and META elements used to be commonly given as examples of ways to improve your site's rankings, but they've been soooooo abused, that if you overdo it with them, you're liable to find your site marked down in search engines as a potential engine spammer, so I'd keep them short and relevant.
It's also important to have good outgoing links to other sites too - search engines use all kinds of fancy assed algorithms to rank a site's popularity, and if you're seen to have lots of links to other popular sites, it'll do your site's ranking good. Likewise, your site's internal structure is important too - have links between all of your pages, so that the spiders can find all the relevant content on your site. Generating an XML sitemap for your site, and making sure that the engines can find it (see
www.google.com/webmasters/tools/docs/en/protocol.html) can help with this too.
Like I said, there's soooo much to this that it's impossible to go into any real detail here. Give me a shout (david@reefnet.co.uk) if you've any questions, and I'll do my best to help you out.
D