soulestream makes a good argument but all I have to go on is my own experience with stand-alone routers which have not been pleasant ones.
Too many holes and things are left to chance for a novice to setup a linux/BSD firewall/router.
This is why I recommended using something like KMyFirewall which makes configuring iptables very simple to understand, much simpler than the routers that I have had to learn how to use over the years, but maybe these have been particular difficult ones, so if you feel comfortable with your router then it will do all the basic things.
As for Tux_Phoenix actual problem :
I have both my modem and my router forwarding port 80 to my server but I still get nothing. When I type in my ip from my isp it just times out and says documnet contains no data.
First off, the fact that you can configure port forwarding on your modem probably means your modem is a router as well so you don't need a separate router. So first try removing the router from the equation & ensure iptables is not running on your server, OR, if your modem does not have any firewalling functions, turn off ALL forwarding & NAT'ing on your modem & allow your router to do all the work. This might not be absolutely necessary but it will ensure that any port forwarding WILL get to your server.
But more that likely, as soulestream said, the problem is with your ISP. I know my ISP, Optusnet here in Australia, blocks certain ports particularly port 80. To check which ports your ISP is blocking you first need to temporarily either open all ports on your router/modem or remove your router entirely & connect directly to the Internet through your modem with no firewalling at all, also ensure iptables is not running on the PC that your modem plugs into which you have probably already done, remember you will be vulnerable during this but it's only temporary. Then go to an online port scanning site, I like www.grc.com
the best (which seems to be down at the moment?!?) but there are hundreds out there, you could try http://www.portsense.com/prescan.cfm
From the results you you will see which ports your ISP is blocking because this scan should find that ALL your ports are OPEN as your firewall is not doing anything but some will be closed/filtered/stealth/blocked or whatever the scanner calls it, these ports are the ones your ISP is blocking you from using.
To get around this you could configure Apache, or the HTTP server you use, to listen to a different port, like the secure HTTP port 443, the problem with this is that to access your HTTP server from the outside world one must add :443 to your web address.
So as soulestream stated, if you want to run a real HTTP server to host your own publicly available website you need to pay more to your ISP to get access to port 80. But just as a further note, a few years ago I was having trouble with my ISP so I called them to find out what was going on, I spoke to an unusually helpful bloke who unblocked port 80 for me, which he really wasn't supposed to do. I can't remember exactly what I said to get this but it happened, you might want to try the same, just don't tell them you wish to host a website!!!
Let us know how you go!