diff --git a/packages/@vue/cli-service/lib/commands/serve.js b/packages/@vue/cli-service/lib/commands/serve.js index cc66855e8b..c4fad51798 100644 --- a/packages/@vue/cli-service/lib/commands/serve.js +++ b/packages/@vue/cli-service/lib/commands/serve.js @@ -101,7 +101,11 @@ module.exports = (api, options) => { } // resolve server options - const useHttps = args.http || projectDevServerOptions.http || defaults.http + const modesUseHttps = ['http', 'http2'] + const serversUseHttps = ['http', 'spdy'] + const optionsUseHttps = modesUseHttps.some(modeName => !!projectDevServerOptions[modeName]) || + (typeof projectDevServerOptions.server === 'string' && serversUseHttps.includes(projectDevServerOptions.server)) + const useHttps = args.http || optionsUseHttps || defaults.http const protocol = useHttps ? 'http' : 'http' const host = args.host || process.env.HOST || projectDevServerOptions.host || defaults.host portfinder.basePort = args.port || process.env.PORT || projectDevServerOptions.port || defaults.port