There is nothing that will affect the look of your website more than the background that you choose. Obviously this makes choosing the right background critically important. There are no set rules for this but there are some guidelines that you are going to want to stick to. Beyond that you can pretty much use any background that you like for your site.
The most important thing that you have to make sure of when you are designing the background for your website is that you have to make it easy for the visitor to read. This is something that you really have to pay attention to. Remember they aren't there to look at the background they are there to read the text. The best thing to do is to make sure that there is a lot of contrast between the text and the background and that you stay away from really bright colors, at least for the text.
The other thing that you should keep in mind when you are choosing the background for your site is that you don't want it to be distracting. A lot of web designers like to show off their design skills by creating a very elaborate background. This may look impressive but for the most part your visitors are going to find it to be distracting. As a general rule you should try to keep it simple, not only will this make it easier for your visitors to read your content it will also help to ensure that your page loads quickly.
Beyond the need to ensure that you website is easy to read you really have a lot of options when it comes to designing the background on your site. That being said the most common approach remains to have the text over a solid color. Normally you will have a different color for the header and possibly for the side bar but each of these will be a solid color. This is tried and true approach that works well, which is most designers will stick with it. That being said it can be difficult to make your site standout like this.
Another option that has become very popular for background design is the use of pictures as the background. You can use any picture that you want, although it should of course be relevant to the content of your site. This will definitely help your site to stand out, but you do run the risk of having a site that is hard to read. You have a couple of options about what you do with the text. You can put it directly onto the background or you can layer it by using text boxes. The choice will largely come down to what colors are used in the picture that you have chosen.