What type of connection are you on ? Does your ISP allow subscribers to host websites ?
Your question is very vague, and as much as you mentioned it would require a member here to write a novel in which were not here to do. We answer detailed questions with detailed answers.
And of course for some it can be a very simple process to setup what your setting up but you have to take in account of what your working with.
We don't know your connection type, your hardware type, and you can't just buy a domain and think it works automatically. I would suggest you reading up a little on this subject. You will also want to look into security for your site to keep out unwanted traffic..
Don't forget setting up your DNS server to so people can make it to your site by typing the name and not the IP address of it.
Some links to start you out in your quest.
www.apache.org
www.proftpd.org
www.mysql.org
www.tldp.org for all the howtos using linux.