nuxt https
我用的模板是nxut-express,版本是:1.4.2。服务器:阿里云。
一、申请免费证书:
网站能通过https访问,首先得申请https证书,付费的阿里云上有售卖的,一年几千块。免费的可以通过certbot工具生成,也可以去阿里云上获取。
1、certbot
certbot官网:https://certbot.eff.org/
certbot和let's encrypt什么关系?我的理解,certbot是更方便的生成let's encrypt签发证书的一个工具。
2、阿里云
阿里云的免费证书在 域名服务->找到对应的域名->管理->免费开启SSL证书,最后去下载证书。下载下来是2个文件。
二、nuxt配置
我用的nuxt是有sever文件夹的,其中sever/index.js:
- const fs = require('fs');
- const http = require('http');
- const https = require('https');
- const path =require('path');
- import express from 'express'
- import bodyParser from 'body-parser';
- import { Nuxt, Builder } from 'nuxt'
- import {timed} from "./schedule/index";
- import api from './api'
- const app = express()
- const host = process.env.HOST || '127.0.0.1'
- const port = process.env.PORT || 3000;
- // app.set('port', port)
- //express.static 函数提供的路径相对于您在其中启动 node 进程的目录。
- app.use('/static',express.static('static'));
- app.use(express.static('./')); //./这是命令运行的位置
- app.use(bodyParser.json({limit: '1mb'})); //这里指定参数使用 json 格式
- app.use(bodyParser.urlencoded({
- extended: true
- }));
- // Import API Routes
- app.use('/api', api)
- // Import and Set Nuxt.js options
- let config = require('../nuxt.config.js')
- config.dev = !(process.env.NODE_ENV === 'production')
- // Init Nuxt.js
- const nuxt = new Nuxt(config)
- // Build only in dev mode
- if (config.dev) {
- const builder = new Builder(nuxt)
- builder.build()
- }
- // Give nuxt middleware to express
- app.use(nuxt.render)
- // Listen the server
- const httpServer = http.createServer(app);
- httpServer.listen(port, host,function(){
- console.log('http启动...');
- });
- console.log('Server listening on ' + host + ':' + port) // eslint-disable-line no-console
- //io
- //https相关
- if(process.env.NODE_ENV === 'production'){
- const privateKey = fs.readFileSync(path.resolve(__dirname,'cert_ali/1538367494158.key'),'utf8');
- const certificate = fs.readFileSync(path.resolve(__dirname,'cert_ali/1538367494158.pem'), 'utf8');
- // const ca = fs.readFileSync(path.resolve(__dirname,'cert/chain.pem'), 'utf8');
- const credentials = {
- key: privateKey,
- cert: certificate,
- // ca: ca
- };
- const httpsServer = https.createServer(credentials, app);
- httpsServer.listen(443,host,function(){
- console.log('https启动...');
- })
- }
这段代码只在生产环境启用https服务。
三、管理阿里云防火墙,开启443端口
前面2步骤结束后,一直访问https没反应,不报错也不返回任何东西,一直在加载网站。
我的网站,直播客:
https://www.zhiboke.site/
nuxt https的更多相关文章
- Nuxt框架实践
前言 今天抽空过了遍nuxt文档,写了个实践demo,关于nuxt我已经断断续续看了好几遍了,自我感觉也算是入门了吧,从开发到上线心里都有底.后期打算在项目用起来的是nuxt框架,一些函数工具库,比如 ...
- nuxt项目踩坑
1.window or document is not undefined // .vue 页面 if (process.browser) { var Distpicker = require('v- ...
- 在nuxt中加入element-ui插件遇到的问题
gen1.首先进入nuxt的官网跟着步骤实现内容. https://zh.nuxtjs.org/guide/plugins 2.在我们的项目目录中找plugin 根据图片中的表示引入内容: impor ...
- 从壹开始 [ Nuxt.js ] 之二 || 项目搭建 与 接口API
前言 哈喽大家周一好,今天的内容比较多,主要就是包括:把前端页面的展示页给搭出来,然后调通接口API,可以添加数据,这两天我也一直在开发,本来想一篇一篇的写,发现可能会比较简单,就索性把项目搭建的过程 ...
- 从壹开始 [ Nuxt.js ] 之一 || 为开源收录Bug之 TiBug项目 开篇讲
缘起 哈喽大家周二好呀,刚刚经历过了几天火车抢票,整个人都不好了,不知道小伙伴对今年的春节是否还一如既往的期待呢,眼看都要春节了,本来也想写篇2018总结篇,但是怕不免会出现鸡汤文的窠臼嫌疑,想想还是 ...
- 服务端预渲染之Nuxt (使用篇)
服务端预渲染之Nuxt - 使用 现在大多数开发都是基于Vue或者React开发的,能够达到快速开发的效果,也有一些不足的地方,Nuxt能够在服务端做出渲染,然后让搜索引擎在爬取数据的时候能够读到当前 ...
- 服务端渲染和nuxt简单介绍
概述 最近研究了一下服务端渲染,有一些心得,记录下来供以后开发时参考,相信对其他人也有用. 参考资料: Vue SSR指南 nuxt.js官网 服务端渲染介绍 服务端渲染简单来说,就是分别对项目用we ...
- 从壹开始前后端分离 [ vue + .netcore 补充教程 ] 二七║ Nuxt 基础:框架初探
缘起 哈喽大家好,又是周四了,俗话说周四来了,周末还远么哈哈,老张我也想下周请假,来个16天的大长假哟,不知道大家是怎么请假的,近来发现文章下边已经没有人评论了,赶脚比较凄凉了,大家看到的麻烦点个赞呀 ...
- 从壹开始前后端分离 [ vue + .netcore 补充教程 ] 二九║ Nuxt实战:异步实现数据双端渲染
回顾 哈喽大家好!又是元气满满的周~~~二哈哈,不知道大家中秋节过的如何,马上又是国庆节了,博主我将通过三天的时间,给大家把项目二的数据添上(这里强调下,填充数据不是最重要的,最重要的是要配合着让大家 ...
随机推荐
- C语言的数组初始化
http://blog.csdn.net/sibylle/article/details/2026915 一直以为 int a[256]={0};是把a的所有元素初始化为0,int a[256]={1 ...
- *** + Polipo 配置全局代理(Linux 版本)
转,原文:http://blog.csdn.net/jon_me/article/details/53525059 我本来是想查这个问题: How to start server and local ...
- 调试JDK源代码-一步一步看HashMap怎么Hash和扩容
调试JDK源代码-一步一步看HashMap怎么Hash和扩容 调试JDK源代码-ConcurrentHashMap实现原理 调试JDK源代码-HashSet实现原理 调试JDK源代码-调试JDK源代码 ...
- Java 实现抽象工厂模式
抽象工厂模式 里面有几个概念:抽象工厂.实体工厂.抽象产品.实体产品 抽象工厂:定义创建产品的抽象方法 实体工厂:详细的创建哪种产品 抽象产品:一个接口或基类 实体产品:实现详细功能,或派生 类图 ...
- swift 2.0 语法 分支
import UIKit // 注意: Swift中可以不写;号, 但是有一定的前提条件, 一行只有一句代码 // 如果一行有多句代码, 那么;还是必须写 // 注意: Swift变态的地方 ...
- tiny4412 裸机程序 一、说明【转】
本文转载自:http://blog.csdn.net/eshing/article/details/37109115 首先.我想说明为什么我写这个文档?我自己想学点东西,过于求成,又过于自信,直接买了 ...
- iOS界面之间的跳转方式
iOS界面之间的跳转方式基本有3种. .改变window的根视图 [self.window setRootViewController:VC]; .模态弹出 [self presentViewCont ...
- Java —— 正则表达式
0. 注意 正则表达式里的点号(.),可以匹配除换行符之外的所有字符 Java 语言同其他语言中的正则表达式的不同在于: 对 \(反斜线)的不同处理 \\:其他语言中,表示在正则表达式中插入普通的反斜 ...
- hdu5698瞬间移动(组合数,逆元)
瞬间移动 Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submis ...
- 微信小程序图片选择,预览和删除
这里均用的是小程序原生api 废话不多说直接上栗子: <view class="addImv"> <!--这个是已经选好的图片--> <view wx ...