If a "port is open", it means that it can be addressed, traffic is not blocked. This does not mean that a service is reacting on the port. If a port is closed, a service could be actively waiting on traffic on that port, but as the port is blocked it cannot be reached. So what you mentioned above is that you told Apache to listen on port 9007. This does not necessarily mean that this port can be reached, because there could still be a blockade.
Your question how to open ports for domains is probably how to tell Apache to listen on specific ports for specific domains, right?