h5-Dooring/doc-dist/assets/js/26.f579aed8.js

355 lines
19 KiB
JavaScript

(window.webpackJsonp = window.webpackJsonp || []).push([
[26],
{
392: function(t, s, a) {
'use strict';
a.r(s);
var n = a(42),
e = Object(n.a)(
{},
function() {
var t = this,
s = t.$createElement,
a = t._self._c || s;
return a('ContentSlotsDistributor', { attrs: { 'slot-key': t.$parent.slotKey } }, [
a('p', [
t._v('目前'),
a('strong', [t._v('H5-Dooring')]),
t._v('全面支持https部署, 具体方式方案如下.'),
]),
t._v(' '),
a('h3', { attrs: { id: '前端工程' } }, [
a('a', { staticClass: 'header-anchor', attrs: { href: '#前端工程' } }, [t._v('#')]),
t._v(' 前端工程'),
]),
t._v(' '),
a('p', [
t._v('我们需要在前端工程中的'),
a('code', [t._v('src/pages/document.ejs')]),
t._v('中的'),
a('code', [t._v('head')]),
t._v('中添加如下代码:'),
]),
t._v(' '),
a('div', { staticClass: 'language-html extra-class' }, [
a('pre', { pre: !0, attrs: { class: 'language-html' } }, [
a('code', [
a('span', { pre: !0, attrs: { class: 'token tag' } }, [
a('span', { pre: !0, attrs: { class: 'token tag' } }, [
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('<')]),
t._v('meta'),
]),
t._v(' '),
a('span', { pre: !0, attrs: { class: 'token attr-name' } }, [
t._v('http-equiv'),
]),
a('span', { pre: !0, attrs: { class: 'token attr-value' } }, [
a('span', { pre: !0, attrs: { class: 'token punctuation attr-equals' } }, [
t._v('='),
]),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('"')]),
t._v('Content-Security-Policy'),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('"')]),
]),
t._v(' '),
a('span', { pre: !0, attrs: { class: 'token attr-name' } }, [
t._v('content'),
]),
a('span', { pre: !0, attrs: { class: 'token attr-value' } }, [
a('span', { pre: !0, attrs: { class: 'token punctuation attr-equals' } }, [
t._v('='),
]),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('"')]),
t._v('upgrade-insecure-requests'),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('"')]),
]),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('>')]),
]),
t._v('\n'),
]),
]),
]),
a('p', [t._v('目的是强制将页面中HTTP请求转换为HTTPS.')]),
t._v(' '),
a('h3', { attrs: { id: '服务器工程' } }, [
a('a', { staticClass: 'header-anchor', attrs: { href: '#服务器工程' } }, [
t._v('#'),
]),
t._v(' 服务器工程'),
]),
t._v(' '),
a('h4', { attrs: { id: '_1-申请ssl证书' } }, [
a('a', { staticClass: 'header-anchor', attrs: { href: '#_1-申请ssl证书' } }, [
t._v('#'),
]),
t._v(' 1. 申请SSL证书'),
]),
t._v(' '),
a('h4', { attrs: { id: '_2-生成-server-csr-server-key' } }, [
a(
'a',
{
staticClass: 'header-anchor',
attrs: { href: '#_2-生成-server-csr-server-key' },
},
[t._v('#')],
),
t._v(' 2. 生成 server.csr+server.key'),
]),
t._v(' '),
a('h4', { attrs: { id: '_3-通过证书链生成-pem文件' } }, [
a(
'a',
{ staticClass: 'header-anchor', attrs: { href: '#_3-通过证书链生成-pem文件' } },
[t._v('#')],
),
t._v(' 3. 通过证书链生成.pem文件'),
]),
t._v(' '),
a('h4', { attrs: { id: '在server中的src-index-js按如下方式修改' } }, [
a(
'a',
{
staticClass: 'header-anchor',
attrs: { href: '#在server中的src-index-js按如下方式修改' },
},
[t._v('#')],
),
t._v(' 在'),
a('code', [t._v('server')]),
t._v('中的'),
a('code', [t._v('src/index.js')]),
t._v('按如下方式修改'),
]),
t._v(' '),
a('div', { staticClass: 'language-js extra-class' }, [
a('pre', { pre: !0, attrs: { class: 'language-js' } }, [
a('code', [
a('span', { pre: !0, attrs: { class: 'token comment' } }, [
t._v('// 忽略部分无影响代码'),
]),
t._v('\n'),
a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('import')]),
t._v(' https '),
a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('from')]),
t._v(' '),
a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v("'https'")]),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(';')]),
t._v('\n\n'),
a('span', { pre: !0, attrs: { class: 'token comment' } }, [
t._v('// 你的ssl存放路径, 建议直接放在server目录下'),
]),
t._v('\n'),
a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('const')]),
t._v(' filePath '),
a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v('=')]),
t._v(' path'),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('.')]),
a('span', { pre: !0, attrs: { class: 'token function' } }, [t._v('join')]),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('(')]),
t._v('__dirname'),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]),
t._v(' '),
a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v("'../ssl'")]),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(')')]),
t._v('\n\n'),
a('span', { pre: !0, attrs: { class: 'token comment' } }, [
t._v('// 启动逻辑'),
]),
t._v('\n'),
a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('async')]),
t._v(' '),
a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('function')]),
t._v(' '),
a('span', { pre: !0, attrs: { class: 'token function' } }, [t._v('start')]),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('(')]),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(')')]),
t._v(' '),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]),
t._v('\n '),
a('span', { pre: !0, attrs: { class: 'token comment' } }, [
t._v('// https配置'),
]),
t._v('\n '),
a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('const')]),
t._v(' httpsOptions '),
a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v('=')]),
t._v(' '),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]),
t._v('\n key'),
a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]),
t._v(' fs'),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('.')]),
a('span', { pre: !0, attrs: { class: 'token function' } }, [
t._v('readFileSync'),
]),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('(')]),
t._v('path'),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('.')]),
a('span', { pre: !0, attrs: { class: 'token function' } }, [t._v('join')]),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('(')]),
t._v('filePath'),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]),
t._v(' '),
a('span', { pre: !0, attrs: { class: 'token string' } }, [
t._v("'3536084__doctopia.com.cn.key'"),
]),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(')')]),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(')')]),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]),
t._v(' '),
a('span', { pre: !0, attrs: { class: 'token comment' } }, [
t._v('//ssl文件路径'),
]),
t._v('\n cert'),
a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v(':')]),
t._v(' fs'),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('.')]),
a('span', { pre: !0, attrs: { class: 'token function' } }, [
t._v('readFileSync'),
]),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('(')]),
t._v('path'),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('.')]),
a('span', { pre: !0, attrs: { class: 'token function' } }, [t._v('join')]),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('(')]),
t._v('filePath'),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]),
t._v(' '),
a('span', { pre: !0, attrs: { class: 'token string' } }, [
t._v("'3536084__doctopia.com.cn.pem'"),
]),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(')')]),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(')')]),
t._v(' '),
a('span', { pre: !0, attrs: { class: 'token comment' } }, [
t._v('//ssl文件路径'),
]),
t._v('\n '),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(';')]),
t._v('\n\t\n\t'),
a('span', { pre: !0, attrs: { class: 'token comment' } }, [
t._v('// https服务'),
]),
t._v('\n '),
a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('const')]),
t._v(' server '),
a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v('=')]),
t._v(' https'),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('.')]),
a('span', { pre: !0, attrs: { class: 'token function' } }, [
t._v('createServer'),
]),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('(')]),
t._v('httpsOptions'),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]),
t._v(' app'),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('.')]),
a('span', { pre: !0, attrs: { class: 'token function' } }, [t._v('callback')]),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('(')]),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(')')]),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(')')]),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(';')]),
t._v('\n\n '),
a('span', { pre: !0, attrs: { class: 'token keyword' } }, [t._v('const')]),
t._v(' io '),
a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v('=')]),
t._v(' '),
a('span', { pre: !0, attrs: { class: 'token function' } }, [t._v('require')]),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('(')]),
a('span', { pre: !0, attrs: { class: 'token string' } }, [t._v("'socket.io'")]),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(')')]),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('(')]),
t._v('server'),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(')')]),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(';')]),
t._v('\n\t\n\t'),
a('span', { pre: !0, attrs: { class: 'token comment' } }, [
t._v('// 忽略其他无影响代码'),
]),
t._v('\n\t\n\t'),
a('span', { pre: !0, attrs: { class: 'token comment' } }, [
t._v('// https默认443, 这里我们可以走公共配置'),
]),
t._v('\n\tserver'),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('.')]),
a('span', { pre: !0, attrs: { class: 'token function' } }, [t._v('listen')]),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('(')]),
a('span', { pre: !0, attrs: { class: 'token number' } }, [t._v('443')]),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(',')]),
t._v(' '),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('(')]),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(')')]),
t._v(' '),
a('span', { pre: !0, attrs: { class: 'token operator' } }, [t._v('=>')]),
t._v(' '),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('{')]),
t._v('\n\t console'),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('.')]),
a('span', { pre: !0, attrs: { class: 'token function' } }, [t._v('log')]),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('(')]),
a('span', { pre: !0, attrs: { class: 'token template-string' } }, [
a(
'span',
{ pre: !0, attrs: { class: 'token template-punctuation string' } },
[t._v('`')],
),
a('span', { pre: !0, attrs: { class: 'token string' } }, [
t._v('服务器地址:'),
]),
a('span', { pre: !0, attrs: { class: 'token interpolation' } }, [
a(
'span',
{
pre: !0,
attrs: { class: 'token interpolation-punctuation punctuation' },
},
[t._v('${')],
),
t._v('config'),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('.')]),
t._v('staticPath'),
a(
'span',
{
pre: !0,
attrs: { class: 'token interpolation-punctuation punctuation' },
},
[t._v('}')],
),
]),
a(
'span',
{ pre: !0, attrs: { class: 'token template-punctuation string' } },
[t._v('`')],
),
]),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(')')]),
t._v('\n\t'),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(')')]),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(';')]),
t._v('\n'),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('}')]),
t._v('\n\n'),
a('span', { pre: !0, attrs: { class: 'token function' } }, [t._v('start')]),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v('(')]),
a('span', { pre: !0, attrs: { class: 'token punctuation' } }, [t._v(')')]),
t._v('\n'),
]),
]),
]),
]);
},
[],
!1,
null,
null,
null,
);
s.default = e.exports;
},
},
]);