SSL连接到socket.io nodejs监听http不是https

我正在使用以下代码访问基于https的socket.io

我的3000 http端口正在监听http请求,但不会将它们redirect到https端口。 url不会重新启动app.get('*')

  server.listen(8000, function() { console.log('listening on *: 8000'); }); http.listen(3000, function() { console.log('listening on *: 3000'); }); httpapp.get('*',function(req,res) { console.log("redirecting"); res.redirect('https://xx.xx.xx.xx:8000'+req.url) }) app.get('*',function(req,res) { console.log("SSL :" + req.url); }) var mysql = require('mysql'); var express = require('express'); var https = require('https'); var con = mysql.createConnection({ host: 'localhost', user: 'root', password: '', database: '', "pool" : { maxConnections: 50, maxIdleTime: 30} }); con.connect(); var app = express() , httpapp = express() , fs = require('fs') , options = { key: fs.readFileSync('/etc/pki/tls/private/udddm.key'), cert: fs.readFileSync('/etc/pki/tls/certs/ca-bundle.crt'), requestCert: true } , http = require('http').createServer(httpapp) , server = require('https').createServer(options, app) , io = require('socket.io').listen(server); io.on('connection', function (socket) { }