2

Websockifyを使用してnoVNC経由でVNCサーバー(TightVNC)に接続しています。これはFirefox14.0.1、Chrome 21、さらにはIE 10でもうまく機能しました。Firefox15にアップグレードすると、問題が発生します。

これはwebsockifyからの出力例です。

>websockify.exe 6080 localhost:5900 -v
WARNING: no 'resource' module, daemonizing support disabled
WebSocket server settings:
  - Listen on :6080
  - Flash security policy server
  - No SSL/TLS support (no cert file)
  - proxying from :6080 to localhost:5900

#Connection with Chrome

  1: 79.194.220.16: Plain non-SSL (ws://) WebSocket connection
  1: 79.194.220.16: Version hybi-13, base64: 'True'
  1: connecting to: localhost:5900

Traffic Legend:
    }  - Client receive
    }. - Client receive partial
    {  - Target receive

    >  - Target send
    >. - Target send partial
    <  - Client send
    <. - Client send partial

{<}>{<}>{<}>{<}>{<}>{{<<}>}>{}><}>}>}>}>  1: localhost:5900: Target closed
  1: 79.194.220.16: Client closed, reason: None - None

#Chrome disconnected, Firefox tries to connect

  2: 79.194.220.16: ignoring socket not ready
  3: 79.194.220.16: Plain non-SSL (ws://) WebSocket connection
  3: 79.194.220.16: Version hybi-13, base64: 'True'
  3: connecting to: localhost:5900

Traffic Legend:
    }  - Client receive
    }. - Client receive partial
    {  - Target receive

    >  - Target send
    >. - Target send partial
    <  - Client send
    <. - Client send partial

{<

最後の行の後にwebsockifyがハングし、他の接続を受け入れません。FirefoxのコンソールOuputは次のとおりです。

New state 'loaded', was 'disconnected'. Msg: noVNC ready: native WebSockets, canvas rendering

util.js (Zeile 110)

New state 'connect', was 'loaded'.

util.js (Zeile 110)

WebSocket on-error event

util.js (Zeile 110)

New state 'failed', was 'connect'. Msg: Connect timeout


case 'error': Util.Error = function (msg) { console.error(msg); };

util.js (Zeile 111)

Firefox kann keine Verbindung zu dem Server unter ws://ec2-176-34-194-149.eu-west-1.compute.amazonaws.com:6080/websockify aufbauen.


websocket = new WebSocket(uri, 'base64');

websock.js (Zeile 275)

WebSocket on-close event

util.js (Zeile 110)

Received onclose while disconnected (code: 1006)


case 'error': Util.Error = function (msg) { console.error(msg); };

util.js (Zeile 111)

New state 'disconnected', was 'failed'.

前述のように、これはFF 14.0.1で完全に機能し、Chrome21とIE10でも機能します。

Firefoxがwebsockifyをクラッシュさせる理由はありますか?これはFirefoxWebsocketコードのバグですか、それともWebsockifyのバグですか?

4

1 に答える 1

2

Mozilla バグ レポートに返信しました: https://bugzilla.mozilla.org/show_bug.cgi?id=789018

要約すると、これは Windows/Python の問題であり、Firefox 15 の誤機能 (投機的接続) と組み合わされています。

一時的な解決策として、noVNC で接続タイムアウトを増やすことができます。

于 2012-09-06T14:21:59.280 に答える