tutorial - gulp-livereload sobre https?
gulp-connect (2)
Hay dos soluciones fuera de mi cabeza:
1. Organiza el cliente tú mismo
https://github.com/livereload/livereload-js
Instalarlo como una dependencia:
bower install livereload-js --save-dev
o
npm install livereload-js --save
Luego solo inclúyelo como si incluyeras un script regular. Sin embargo, tenga en cuenta estas advertencias .
/path/to/dist/livereload.js?host=localhost
2. Proxy el script del cliente
Esto es bastante complicado, pero definitivamente funcionaría. Cree un servidor HTTPS en su gulpfile (tal vez en la tarea de vigilancia).
https://github.com/nodejitsu/node-http-proxy
https://github.com/nodejitsu/node-http-proxy#using-https
httpProxy.createServer({
ssl: {
key: fs.readFileSync(''valid-ssl-key.pem'', ''utf8''),
cert: fs.readFileSync(''valid-ssl-cert.pem'', ''utf8'')
},
target: ''https://localhost:35729'',
secure: true // Depends on your needs, could be false.
}).listen(443);
Luego puede hacer referencia a la secuencia de comandos proxy.
https://127.0.0.1:443/livereload.js?snipver=1
He estado usando livereload cromo extension que inserta un http: // [...] /livereload.js en el documento. Desafortunadamente, estoy trabajando en un proyecto que requiere https y esperaba replicarlo localmente, pero no es necesario hacerlo ya que puedo cambiar el protocolo para diferentes entornos, pero me pregunto si es posible establecer un trago -livereload para cargar a través de https en su lugar?
Hay algunas cosas que probé, como agregar el script manualmente sin éxito, ya que recibo un error de conexión (GET https://127.0.0.1:35729/livereload.js?snipver=1 net :: ERR_CONNECTION_CLOSED):
var script = document.createElement(''script'');
script.type = ''text/javascript'';
script.src = ''https://127.0.0.1:35729/livereload.js?snipver=1'';
document.getElementsByTagName(''body'')[0].appendChild(script)
Cualquier consejo es apreciado, ¡gracias!
Aunque no está en los documentos API, la adición de parámetros clave / cert funciona
gulp.task(''run-reload-server'', function() {
livereload.listen({
host: "my.domain.com",
port: 35729,
key: fs.readFileSync(path.join(__dirname, ''livereload.key''), ''utf-8''),
cert: fs.readFileSync(path.join(__dirname, ''livereload.crt''), ''utf-8''),
});
});