Express 配置Gridsome';要使用SSL的Web包开发服务器 更新

Express 配置Gridsome';要使用SSL的Web包开发服务器 更新,express,vue.js,webpack,webpack-dev-server,gridsome,Express,Vue.js,Webpack,Webpack Dev Server,Gridsome,我最终完成了我在这里要做的事情。如果被接受,将更新此问题。与此同时,你可以参与我的项目 背景 在进行本地开发时,我喜欢设置SSL以尽可能地匹配我的生产环境。对于一个典型的Vue.js项目,我完成了以下工作: 在项目的根目录中,使用mkcert example.test 更新我的hosts文件,将127.0.0.1(本地主机)映射到示例。测试: 更新vue.config.js中的网页配置以使用证书,如下所示: //vue.config.js 常量fs=require('fs') module.ex

我最终完成了我在这里要做的事情。如果被接受,将更新此问题。与此同时,你可以参与我的项目

背景 在进行本地开发时,我喜欢设置SSL以尽可能地匹配我的生产环境。对于一个典型的Vue.js项目,我完成了以下工作:

  • 在项目的根目录中,使用
    mkcert example.test
  • 更新我的
    hosts
    文件,将
    127.0.0.1
    (本地主机)映射到
    示例。测试
  • 更新
    vue.config.js
    中的网页配置以使用证书,如下所示:
  • //vue.config.js
    常量fs=require('fs')
    module.exports={
    配置网页包:配置=>{
    if(process.env.NODE_env!=“生产”){
    config.devServer={
    disableHostCheck:true,
    主机:“example.test”,
    https:{
    key:fs.readFileSync('./example.test key.pem','utf8'),
    证书:fs.readFileSync('./example.test.pem','utf8'),
    },
    }
    }
    },
    }
    
    通过此设置,当我运行
    npm run service
    时,我可以在

    我的目标 我想为一个项目获得一个类似的配置设置,但到目前为止,我所做的任何尝试似乎都没有效果

    我试过的 以下是我迄今为止尝试过但没有奏效的方法:

    尝试#1:在
    gridsome.config.js
    我尝试更新我的
    gridsome.config.js
    文件,如下所示:

    const fs=require('fs'))
    module.exports={
    siteName:'示例',
    siteUrl:'example.test',
    插件:[],
    配置网页包:配置=>{
    if(process.env.NODE_env!=“生产”){
    config.devServer={
    disableHostCheck:true,
    主机:“example.test”,
    https:{
    key:fs.readFileSync('./example.test key.pem','utf8'),
    证书:fs.readFileSync('./example.test.pem','utf8'),
    },
    }
    }
    返回配置
    },
    }
    
    这似乎没有任何影响

    尝试2:在
    gridsome.server.js
    同样,我在
    gridsome.server.js中也尝试了类似的操作:

    const fs=require('fs'))
    module.exports=函数(api){
    api.configureWebpack({
    开发服务器:{
    disableHostCheck:true,
    主机:“example.test”,
    https:{
    key:fs.readFileSync('./example.test key.pem','utf8'),
    证书:fs.readFileSync('./example.test.pem','utf8'),
    },
    }
    })
    }
    
    尝试#3:修改快速配置 。仔细检查后,Gridsome似乎使用的是内部webpack开发服务器,而不是内部webpack开发服务器。啊!如果您正在尝试配置正确的服务器,它会有所帮助。我试图修改
    gridsome.server.js
    如下:

    const fs=require('fs'))
    常量https=require('https')
    module.exports=函数(api){
    api.configureServer(应用=>{
    //创建一个HTTPS服务器
    const server=https.createServer({
    key:fs.readFileSync('./example.test key.pem','utf8'),
    证书:fs.readFileSync('./example.test.pem','utf8'),
    },app)
    //启动它
    服务器监听(8080)
    })
    }
    
    虽然我可以确认这个函数运行,但它似乎没有包含任何允许像我希望的那样工作的钩子

    其他信息、想法等。 我在这两个地方都尝试了使用函数样式和对象样式(如上面的示例)更改webpack配置。我可以在启动dev服务器时使用该标志让Gridsome识别我的主机(即,
    Gridsome develop--host example.test

    我的直觉是我想做的是不可能的。有人有不同的认识吗?谢谢你

    # /etc/hosts
    127.0.0.1 example.test