In earlier versions of Flash Player, if the server didn't have a socket policy, your Flash application could still connect. Now if there's no policy, your application will not connect.
When the Flash Player tries to make a connection, it checks in two places for the socket policy:
* Port 843. If you are the administrator of a webserver and you have root access, you can set up an application to listen on this port and return a server-wide socket policy.
* The destination port. If you're running your own xml server, you can configure it to send the socket policy file.
The Flash player always tries port 843 first; if there's no response after 3 seconds, then it tries the destination port.
In either case, when the Flash player makes a connection, it sends the following XML string to the server:
<policy-file-request/>
Your server then must send the following XML in reply:
<cross-domain-policy>
<allow-access-from domain="*" to-ports="*" />
</cross-domain-policy>
* is the wildcard and means "all ports/domains". If you want to restrict access to a particular port, enter the port number, or a list or range of numbers.
Since the Flash Player always tries port 843 first, if there's nothing listening on that port, then the Flash clients are going to experience a 3-second delay when trying to connect to your server. Even if you set up a policy file on the destination port, there will still be the delay. For fastest response times, you should set up a server-wide socket policy server on port 843.