4

I have installed the apache-tomcat server on my local win7. The port I specified is 9999. Additionally, I use the distributed binary version of apache tomcat. Not installing as a windows service.

I can access my service by http://localhost:9999 and http://myIPAddress:9999

But I cannot access my apache server from other computers. I searched on the internet, and found I should add a firewall inbound rule in its advanced settings.

  1. Right click "Inbound Rules" on the left pane
  2. Choose "New Rule"
  3. Choose "Port"
  4. Under "Specific ports" enter your port number (9999)
  5. Continue with "Next" until the end of the wizard, naming the rule when asked.

After doing this, it still doesn't work!!

I have checked with "netstat -na" to see that: TCP 0.0.0.0:9999 0.0.0.0:0 LISTENING

Then only method I find by far is turning off my windows firewall! But this is not preferred since the potential security risk.

Some online post refers to httpd.conf file. But my apache-tomcat have no such kind of fire.

Could someone give me some hints?


EDIT:

There are three places related to port number setting in the /conf/server.xml file.

<Server port="8005" shutdown="SHUTDOWN">

<Connector port="9999" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />// I change the 8080 to 9999 for my own use.

<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />

Zack
  • 319
  • 2
  • 3
  • 8
  • So when you turned your firewall off, it worked? – Danila Ladner May 04 '13 at 04:29
  • Eh, 9999 and 8009 aren't the same... – Chris S May 04 '13 at 04:30
  • @DanilaLadner yes. if i turned off windows firewall, it will work fine. But this is not really secure for my own computer. – Zack May 04 '13 at 04:55
  • @ChrisS Sorry, it is a typo. 8009 is another port listening. – Zack May 04 '13 at 04:55
  • So this is obviously an issue with the firewall - can you give your detailed configuration? It's difficult to answer without getting more details. – tdk2fe May 04 '13 at 05:01
  • @tdk2fe what do you mean by detailed configuration? I EDIT my post to give the port configuration part of /conf/server.xml file. – Zack May 04 '13 at 05:03
  • 1
    This has nothing to do with your tomcat configuration. Access is being blocked when you enable the firewall, and it's being allowed when the firewall is down. – tdk2fe May 04 '13 at 05:08

2 Answers2

5

The 8080 is the tomcat port. Should allow the Tomcat on the firewall (it is not allowed by default)...

Firewall - Allow an app or feature through Windows Firewall - Another program - browse Tomcat7.exe (i.e. c:\xampp\tomcat\bin\Tomcat7.exe) if you enabled it as a service or Tomcat7w.exe when it is not a service...

Hope this will help.

Csaba Vajo
  • 51
  • 1
  • 3
0

Use the Advanced Firewall interface, make sure the profile (private, public, etc) matches what zone the interface is associated with in the Network and Sharing Center, then verify there is an enabled rule that allows the protocol and port (TCP 9999). tdk2fe is right, if it works with the firewall off, the app is configured correctly and the issue is in the firewall.

**Reading your post again, make SURE the rule you added was enabled...

John W
  • 86
  • 3
  • What you mentioned here are all confirmed by me. I even checked the private, public, domain boxes. And the inbound rule is TCP 9999. It is enabled. This is really tough question. – Zack May 04 '13 at 10:54
  • The issue is definitely in the firewall since it works when that is disabled. You also have some other ports listed such as 8009 and 8443, you may need to include these in ENABLED allow firewall rules with the appropriate interface, zone, subnet(s), etc... – John W May 04 '13 at 17:26