Написал вот такую балду во флеше:

Код AS1/AS2:
var host:String = '192.168.17.6;
var port:Number = 1239;
mySock = new XMLSocket();
mySock.connect(host, port);
trace('соединяемся с ' + host + ":" + port + "...");
txt_log.text += 'соединяемся с ' + host + ":" + port + "..." + newline;
mySock.onConnect = function(success) {
(success)? success = "успешно установлено" : success = "не установлено";
trace('соединение ' + success);
txt_log.text += 'соединение ' + success + newline;
mySock.send('message');
}
И сделал вот такой сервак на PHP:

PHP код:
<?php
header('Content-Type: text/plain;');
error_reporting(E_ALL ^ E_WARNING);
set_time_limit(0);
ob_implicit_flush();
$address = gethostbyname($HTTP_SERVER_VARS['SERVER_NAME']);
$port = 1239;
try {
echo "-= Server =-\n" .$address. ":" .$port. "\n\n";
echo 'Create socket ... ';
if (($sock = socket_create(AF_INET, SOCK_STREAM, SOL_TCP)) < 0) {
throw new Exception('socket_create() failed: '.socket_strerror(socket_last_error())."\n");
} else {
echo "OK\n";
}
echo 'Bind socket ... ';
if (($ret = socket_bind($sock, $address, $port)) < 0) {
throw new Exception('socket_bind() failed: '.socket_strerror(socket_last_error())."\n");
} else {
echo "OK\n";
}
echo 'Listen socket ... ';
if (($ret = socket_listen($sock, 5)) < 0) {
throw new Exception('socket_listen() failed: '.socket_strerror(socket_last_error())."\n");
} else {
echo "OK\n";
socket_set_nonblock($sock);
echo "Waiting for a connection...\n";
}
$clients = array($sock);
do {
$read = $clients;
if (socket_select($read, $write = NULL, $except = NULL, 0) < 1)
continue;
if (in_array($sock, $read)) {
$clients[] = $newsock = socket_accept($sock);
socket_getpeername($newsock, $ip);
echo "New client connected: {$ip}\n";
$key = array_search($sock, $read);
unset($read[$key]);
}
foreach ($read as $read_sock) {
$data = @socket_read($read_sock, 1024, PHP_NORMAL_READ);
if ($data === false) {
$key = array_search($read_sock, $clients);
socket_getpeername($clients[$key], $ip);
unset($clients[$key]);
echo "Client {$ip} disconnected.\n";
continue;
}
}} while (true);
} catch (Exception $e) {
echo "\nError: ".$e->getMessage();
}
if (isset($sock)) {
echo 'Close socket ... ';
socket_close($sock);
echo "OK\n";
}
?>
Запускаю сервак - всё отлично. Запускаю флешку откуда угодно - socket.connect срабатывает:

PHP код:
-= Server =-
192.168.17.6:1239
Create socket ... OK
Bind socket ... OK
Listen socket ... OK
Waiting for a connection...
New client connected: 192.168.17.6
Client 192.168.17.6 disconnected.
New client connected: 192.168.17.6
Client 192.168.17.6 disconnected.
А вот во флешке onConnect срабатывает
только если запустить флеху по ctrl+Enter из проекта - с браузера же пишет, что соединение не установлено (connect всегда пашет).
В чём дело? Я уже рву волосы
