a) External Links.It is probably one of the most important factors in having a highly ranked website in search engines. Links from other websites pointing to yours is your best bet in having a top index ranking. Unfortunately, it is also the most tedious and time-consuming to do. Normally, this is achieved by offering reciprocal links with other websites. To do this you must contact them and see if they are willing to do this. It is also important to note that websites that are not highly ranked in search engines do not contribute much to your search engine ranking when they link to you. Try to get links from highly ranked sites.
b) Internal Links.It is important for individual pages of your website to have access to the rest of the site. This allows search engines to crawl the rest of your site once they have indexed one of your pages.
c) Anchor Text. The words used to link to your pages, that is, the text between the <href> and <a> tags, add weight to your search engine placement. Whether the link come from outside or within your website, it is best to make the anchor text incorporate some of your keywords.
d) Domain names. Your domain name also has bearing on your ability to be placed highly in search engines. It would be best to choose a domain name that incorporated one or more of your keywords.
What to Avoid
a) Flash. OK, maybe not entirely. Flash certainly can make your site stand out when used effectively. Flash animations have now fallen out of favor, but it is now being reinvented as a web application and purpose-driven multimedia tool. While Google can now index flash, a lot of search engines still can’t – so try to keep it to a minimum. Also, watch out, while Google can index text in Flash, it can’t follow links inside it, so make sure to make your navigation in plain old HTML.
b) Large images. Large images mean less text and lengthy download times. Some sites also put text content in images, text which may add to keyword density.
c) Frames. A lot of search engines cannot index web pages embedded in frames and it is wise to avoid them entirely. Placing your navigation on each page is definitely a better approach, as it not only allows search engines to easily crawl your site, but also helps improve your ranking by proliferating anchor text in your site.
e) Dynamic pages. Non-html pages like asp, aspx, php, cfm are generally not indexed by a lot of search engines. Do not place important content on such pages. It is also important to note that some sites that provide reciprocal links use dynamically generated back-links which are not indexed by search engines, thereby nullifying the advantage of having an external link. Make sure that links pointing to your site are in plain HTML.