Does your machine that runs apache have your public static IP
address or a private, non-routable, address (10.x.y.z or
192.168.x.y)?
If it is a private address, you have a router or ADSL modem or
some other kind of customer premises equipment and you will have
to configure port-forwarding (often indicated as NAT or PAT) for
port 80 in the router.
Often those devices have what is called NAT loopback, which
automatically replaces the public address in a request by the
local address of the originating computer.
Another possible cause is a firewall between your friend and you.
Some internet providers do not allow you to run servers and block
incoming traffic. There is not much you can do to change that,
except trying some other port than the default http port, 80.
Of course, the new port has to be forwarded.
I Hope this helps.
--
Kees Nuyt