I have installed on my computer the Apache web server for Debian. My ISP is CenturyLink, and I have its EQ-660r ADSL Router, which imposes on me a LAN even though I have only 1 computer. Nothing on my setup is wireless. I can get the web server to serve me the index.html file by entering in the browser’s URL field my internal IP address, but it will not serve that page to my computer or my neighbor’s computer when we enter http://184.7.113.15, which was my public IP address per ipchicken.com. The public IP address stays constant for hours as long as I stay connected. I went into the router’s software (the NAT data) and entered data to forward port 80 to my computer’s private IP address (192.168.2.2). Does anyone have any thoughts as to the source of the problem?
Hello there, There are a lot of ISP's out there that block port 80, because they do not allow people to host websites from their connection. I would try changing the port that Apache listens on in the configuration, restarting Apache, and changing the forwarded port on the router, and see if it resolves. Regards, Chris
I have asked my ISP multiple times if it blocks ports, and it repeatedly has said No. CenturyLink publicly states its ports-blocking policy, which says: [h=3]"Application-Specific Policy:[/h] CenturyLink does not block, prioritize, or degrade any Internet sourced or destined traffic based on application, source, destination, protocol, or port unless it does so in connection with a security practice described in the security policy section below." Actions speak louder than words; so Chris, I will try your suggestion. I'll post here and let you know the results. I appreciate your help.
Found an article that might help http://lifehacker.com/127276/special-how-to-access-a-home-server-behind-a-routerfirewall?tag=softwarefeature Code (markup):
GMF: I read the article you suggested, and I have already have done what the article says to do, namely, to create a rule in my router's NAT section to forward traffic on port 80 to my computer's internal IP address. I did that yesterday; so that's not the problem. But thanks anyway for your willingness to try and help.
I have some good news. I reconfigured apache to listen on port 50002, and I changed the NAT rule to forward port 50002. Then I disabled both firewalls (the one in the router and Guarddog's), and it worked externally.
It sounds like your ISP is blocking port 80 then, or, one of your firewalls was blocking the connection. Chris
I will test to determine which one and I'll let you know. I suspect the firewalls. Thanks again for your help.
I started this thread 54 days ago, but I had to switch gears and revise a book I have written. I'm back to my web server. You will have to read the prior posts on this thread to understand the problem I was having. I had gotten the web server to work on port 50002, and I was wondering if it would work on port 80. That's what I tried today. Please read on. Today I did the following: I (1) disabled the firewall that is built into my router, (2) disabled the Guardog firewall, (3) told Apache to Listen 50002, and (4) sent from a neighbor's computer a request for my home page on port 50002. It worked. My home page displayed on my neighbor's computer. Then I changed the configuration file and told Apache to Listen 80. I returned to my neighbor's home and tried to access my home page by leaving off the colon and port number. This time it did NOT work. Instead of displaying the home page, it launched the software that is built into my neighbor's router (which is the same one I have). That software enables him to access his firewall, etc. My neighbor surfs the net all the time; so his firewall is not blocking port 80, mine firewalls are disabled; so they are not blocking port 80. From what I have said here today, does it appear to you that my ISP (which also is my neighbor's ISP) is blocking port 80? That's what it looks like to me, but I'm less familiar with this stuff than many of you. I will appreciate an informed answer.