LINUX.ORG.RU

Общение с демоном через flash


0

1

Привет, ЛОР.

Пишу свой чат с демоном на сях. Существует проблема, как к этому демону за сообщениями будет обращаться веб-морда. Для того, чтобы не использовать лишние порты, написал модуль для апача, который по определенному запросу передаёт клиентский сокет демону. Написал небольшую флешку, которая через XMLSocket подключается к демону и делает callback-и в яваскрипт при получении чего-либо. Собственно, проблема в чём: чтобы подключиться к 80-му порту (к любому порту < 1024), нужен файлик с т.н. CrossDomain-policy - маленькая xml-ка, где указано, с какого домена на какой порт могут идти запросы. При экспериментах выяснилось, что работает такой способ только если передавать эту xml-ку прямо первым ответом с сервера, к которому подключается флешка (серверу идёт запрос на эту политику в виде xml тоже). Есть еще вариант использовать стандартный порт для сервера политик (сервер, который занимается только тем, что отсылает такие вот xml-ки при подключении). Первый вариант врятли возможен, т.к. у меня 80 порт - это веб-сервер, который не будет никаких файликов по непонятным запросам отправлять. А второй - придется использовать еще один порт, при том, что я старался ограничиться 80-ым.

Как мне с этим быть? Я видимо слишком зациклился на флеше, скорее всего есть еще какие-то варианты. Спасибо.

★★

А второй - придется использовать еще один порт, при том, что я старался ограничиться 80-ым.

Самый правильный вариант.

Конфиг для nginx:

    server {
        listen 843;
        server_name  server.ru;
        location / {
            rewrite ^(.*)$ /crossdomain.xml;
        }
        error_page 400 /crossdomain.xml;
        location = /crossdomain.xml {
            root html;
        }
    }
anonymous
()
Ответ на: комментарий от Shtucer

Пилю для собственного удовольствия, хотя и понимаю что сама цель морально устарела. Тем более, что живых аналогичных проектов нету (по крайней мере, открытых).

POLTER ★★
() автор топика
Ответ на: комментарий от anonymous

Тогда фактически получается, что модуль, который передаёт сокет с запроса демону, не нужен — уж проще вещать демоном на 8080 порту и передавать crossdomain.xml напрямую.

Хотелось бы все-таки обойтись без лишних портов. Смотрю в сторону java-апплетов, но толком пока не понял какие там накладываются ограничения.

POLTER ★★
() автор топика
Ответ на: комментарий от iMp

Собсна, оттуда и почерпнул :).
Но там используется демон на отдельном порту, что позволяет передавать непосредственно через него crossdomain.xml. А я пытаюсь ограничиться только 80-м портом.

POLTER ★★
() автор топика

Общение с демоном через flash

Всегда подозревал flash в причасности к сатанизму. ))

HiddenComplexity
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.