If you want this sort of thing then you probably want to install a content management system once you've set up your basic hosting. It will make your life easier. Don't forget to register a domain name too, unless you want people to access your site by its IP address
You want to install what's commonly called a "LAMP" server (or LAMP stack) It's surprisingly easy to set up all the basics.
The hard part is "hardening" the server. If you just install the LAMP you can expect your server to be attacked (and conquered, if you will) regularly.
If you just want to open a fanfic website it's probably easier to just grab some hosting space somewhere.
Lamp is great, and pretty much just a single package for what I recommended (stands for Linux Apache MySQL PHP, or something along those lines ).
I agree that it'd probably be your best bet to get hosting space somewhere. Even moderate traffic will probably seriously affect your connection speed, and there's the issue of security on top of that, as mentioned.
If you want to start learning about web servers et all, there are 2 other options (putting your site on an outside host is probably a good idea, but nothing stopping you from learning this side of things either!)
- a VPS (virtual private server) I have 2, and they're pretty good sandboxes. My hosting company bothers with security, but I still have a great deal of control. They're a good midrange option for someone who needs more then the usual shared hosting and doesn't need (or want) full dedicated. Not free.
- run a VirtualBox guest. This will let you run an OS inside an OS, and you can interact with the "guest" server like any normal server, depending on how you configure it. Free.
If you really want to have a server-server, go for it! Just be aware that getting one to run is easy. Making it safe is not. Just make sure that your own personal data is secured elsewhere. You can use old crummy computers to be basic servers. I have an old Dell desktop that retired to life as a DNS server on our private intranet. It was a hunk of junk for desktop use, but for sitting there playing "traffic cop"? It's a champ.
Fully agree with the VPS suggestion, it's a great way to go. Don't use them myself but have a friend that runs a few hundred of them for his business with various providers and loves them.
As for building your own server to learn on - Why do all the hard work when you can download a pre built LAMP VM image from a number of sources. Just boot it up an go. You can tweak to your hearts content and have the rewards instantly.