Try this website
www.portforward.com. There is explanation on how to do that what you are looking for on many known ruters. I had similar problem when i wanted to publicly display my localhost. The problem was that when i entered my IP address in webbrowser, instead of browser showing MyLocalHost site it showed MyRouterHost site (it's the site where you go when typing 192.168.1.1 (or similar IP) adress).
All you have to do is set port forwarding on your router redirect to your Apache port (make it other than 80

eg.. 8886). Now i would write how to make that for my router, but i don't think that would help you. So try that site.
Also, i had massive problems, with firewalls (both on computer and on my router), i also needed to create Static IP adress for my LAN card, and several other things. That is beacouse i have a cheap router. I wish you luck and a good router

EDIT: Corected the name of the website
Reply