為Flash開啟843端口
Flash發(fā)起socket連接遠(yuǎn)程服務(wù)端時(shí),首先會(huì)到對應(yīng)服務(wù)端的843端口請求一個(gè)安全策略文件。否則Flash無法建立與服務(wù)端的連接。在Workerman中可以用如下方法開啟一個(gè)843端口,返回安全策略文件。
<?php
use Workerman\Worker;
use Workerman\Connection\TcpConnection;
require_once __DIR__ . '/vendor/autoload.php';
$flash_policy = new Worker('tcp://0.0.0.0:843');
$flash_policy->onMessage = function(TcpConnection $connection, $message)
{
$connection->send('<?xml version="1.0"?><cross-domain-policy><site-control permitted-cross-domain-policies="all"/><allow-access-from domain="*" to-ports="*"/></cross-domain-policy>'."\0");
};
if(!defined('GLOBAL_START'))
{
Worker::runAll();
}
其中xml的安全策略內(nèi)容可以根據(jù)你的需要進(jìn)行自定義設(shè)置。