I'm trying to set up my laptop as a server for fun. I got XAMPP, and am running Apache server. I know it's working, because when I got to localhost, it correctly displays my index.html. If I go to my local IP, (, it displays correctly also. I went into my wireless router, and port forwarded port 5900 to point to my laptop ( with both UDP and TCP. I would now assume that if I went to it would point to my new laptop router. Instead, it says that it cannot establish a connection. It does the same if I do my router's non-local IP address on port 5900.

Does anyone have any ideas of what I might be doing wrong?



  • 2
    I presume you've configured the Apache instance in XAMPP to listen on 5900 rather 80? – Paul Dixon Sep 11 '10 at 20:37

Here are some reasons this could be happening:

  • Your laptop has a firewall running that is blocking incoming requests. Solution: poke a hole in the firewall to allow requests to come in on the correct port (80 or 5900, it's not entirely clear from your question)

  • Apache is configured to listen on a specific IP address. For example: <VirtualHost>. Solution: change it to something like this: <VirtualHost *:5900>.

  • Apache is listening on the wrong port. ie. not the one your router is forwarding traffic to. For example: Listen 80. Solution: change it to something like this: Listen 5900.

  • Your ISP blocks incoming traffic on port 80. Many ISPs do this. They don't want you running a web site off a cheapo home internet account. They would rather sell you a hosting solution for more money or they simply don't have the upstream bandwidth available to support such things. Solution: see if they offer a business service and pay for that or get a real hosting account from a real hosting company.

| improve this answer | |

Not the answer you're looking for? Browse other questions tagged or ask your own question.