Mac OS X Server ignores remote HTTP connections, but accepts local ones

OS X actually has (at least) 3 firewalls. Since you've turned off the application firewall (in System Preferences -> Security & Privacy -> Firewall) and checked the Berkeley packet filter (pfctl -sa), I'm guessing it's the old ipfw that's doing the blocking. You can check with sudo ipfw show -- that'll list the active rules, along with counts of how many packets and bytes each one has applied to:

$ sudo ipfw show
01000 19228642 23229993542 allow ip from any to any via lo0
01010        0           0 deny ip from any to 127.0.0.0/8
[etc...]
65534    23505     3467352 deny ip from any to any
65535        0           0 allow ip from any to any

If your listing only shows rule #65535 (the allow rule at the end), my guess is wrong and you have to look elsewhere. If it does show other rules, you probably have a third-party firewall config program installed somewhere (I don't think the Apple-supplied ipfw config software is still there in 10.8); take a look in /Library/StartupItems and /Library/LaunchDaemons for things that might be relevant.


Open Console.app and check /var/log/appfirewall.log. You will be looking to see whether the connection request even reaches the app firewall. If it does reach there AND is allowed next check both /var/log/apache2/access_log and /var/log/apache2/error_log to see whether the request is reaching Apache. If the request is reaching Apache then the problem is likely in your Apache configuration file(s). If none of the above logs shows anything check the system.log for additional clues.