DIY build your own website server from home

Does anyone would know a good tutorial for someone with basic linux/unix knowledge in order to build and setup a home website server?
1) First: I would like a step by step practical how to, with an example, and a good introduction to more detailed theory.
2) Second : What is the best and more thorough books about networking,TCP/IP and web servers in unix/linux world?
Anyone with a lead please?
Thank you and keep up the good work!

Thanks!

FYI, there is quite a difference between networking and network programming and setting up a web server; but I am assuming you are talking about system/network administration.

One idea is to go over to Linode and just open the cheapest account; and then configure a Linode (they have instructions) and then install all the apps for a LAMP (Linux, Apache2, MySQL, PHP) web server.

Linode has all the tutorials you need.

#2 - Richard Stevens 'UNIX network programming' 2 volumes.

The first edition is available (some out of date material) as a free pdf download. This is a LARGE undertaking.

Thanks for the precision Neo,

Let me try to rephrase what I am seeking:
1) Access through the internet a personal database running on a computer at home.
I want to update this database "on the go" with my work laptop or even my blackberry.
I have a standard ISP, no static IP address and I would like to find out how to access my application via internet?
I suppose it involves managing IP forwarding and tweak my home network to have a reasonably secure setup.
I already have a LAMP setup but only accessible locally or through the net if I upload my application to a web-server provider.
But this is what I would like to avoid, I would like to manage myself this access to the internet.
2) More generally I want to acquire a thorough understanding of networking and network programming, I also would like to master the admin associated with running a network linked to the internet.
I appreciate this is a large task but I am ready to work hard and thoroughly for this.
I need where to start and what to follow...
Once again many thanks for your help!