node.js: socket.io vs express.static

Tengo el siguiente server.js corriendo:

<code>module.exports = server;

var express = require('express');
var fs = require('fs');

var server = express.createServer();    

var port = 58000;
server.listen(port);

var io = require('socket.io').listen(server);

server.use(express.static('/', __dirname + '/../public'));

server.use(express.logger());

io.on('connection', function(client){
    console.log('new client connected ' + client);
    client.on('message', function(){
        console.log('client wants something');
    });
});
</code>

Servidor express.static simple para archivos en una subcarpeta / public, además de funcionalidad socket.io. Con esta configuración, cualquier solicitud para el archivo 'socket.io.js' falla, es decir,

<code>http://localhost:58000/socket.io/socket.io.js
</code>

devuelve un error 404 (archivo no encontrado). El servidor de archivos estático funciona correctamente. Si simplemente uso el módulo 'http' en lugar de 'expreso' (comentando las líneas express.static y express.logger) socket.io.js se sirve correctamente. ¿Cómo puedo combinar ambas funcionalidades?

Respuestas a la pregunta(2)

Su respuesta a la pregunta