What does your /etc/resolv.conf file say?
Usually when you have this type of problem your router is not sending the DNS info supplied to it from your ISP. There are two ways around this:
1. Statically set all your NIC's to static and modify your /etc/resolv.conf file to look at the DNS servers of your isp. Eg: nameserver xxx.xxx.xxx.xxx (where xxx.xxx.xxx.xxx is the ip address of your ISP's DNS primary server and secondary server on the next line using the same format)
2. Set all your NIC's to have an address supplied by your router/modem via DHCP and make sure the DNS addresses are being recieved from your ISP to your modem.
This usually fixes the problem. As for enabling access to your server from the internet, I suggest that you set up a DeMilitarised Zone (DMZ) for your web server so if your server is ever comprimised, the rest of your network is not at the mercy of the attacker. Use ssh to administer your server if you do not have physical access to it, and run it on a non standard port, (ie not port 22), this will usually fool many script kiddies and automated attacks. Make sure you read the apache config documentation from apache.org and lock it down solidly. Also uninstall any services you are not explicitly using.
Good luck my friend and happy Linuxing,