首页 > 解决方案 > Nuxt 6.14.6 redirect-ssl 模块无法在 AWS 中运行

问题描述

我正在尝试将 redirect-ssl 节点模块配置到 nuxt 应用程序中

参考:https ://www.npmjs.com/package/redirect-ssl

但是当我在浏览器中加载站点时,它会给我消息错误->无法获取/
引用。https://prnt.sc/xqsc05

站点在没有重定向模块的情况下使用 SSL。但我想强制将所有非 HTTP 请求重定向到 HTTPS。我尝试了 .htaccess 代码,但我认为 nuxt 不支持它。

终端没有错误。

尝试按照以下不同方式进入 nuxt.config.js。

serverMiddleware: ["redirect-ssl"],

在 server/index.js 文件中添加以下代码

const redirectSSL = require('redirect-ssl')

async function start () {
.
.
app.use(redirectSSL)
}

在此处输入图像描述

我们如何使用 .htaccess 文件进入 nuxt。我尝试放入 root 或 nuxt 项目设置,但这对我不起作用。

除了 build:publicPath 变量之外,任何人都知道如何将 CDN 实现到 nuxt 中。

请对使用 htaccess 的 redirect-ssl 模块或 nuxt 有任何帮助或建议吗?

标签: node.jsvue.jssslnuxt.jsvue-router

解决方案


试试下面的方法。

在此处输入图像描述

进入 server/index.js

const redirectSSL = require('redirect-ssl');
const fs = require("fs");
const path = require("path");
const https = require('https');
const express = require('express');
const consola = require('consola');
const { Nuxt, Builder } = require('nuxt');
const app = express()
const pkey = fs.readFileSync(path.resolve(__dirname,  'domain_ssl.com.key'));
const pcert = fs.readFileSync(path.resolve(__dirname, 'domain_ssl.com.crt'));

const httpsOptions = {
   key: pkey,
   cert: pcert
};

// Import and Set Nuxt.js options
const config = require('../nuxt.config.js')
config.dev = false
async function start () {

  // Init Nuxt.js
  const nuxt = new Nuxt(config)
  const { host, port } = nuxt.options.server

  await nuxt.ready()

  // Build only in dev mode
  if (config.dev) {
        const builder = new Builder(nuxt)
        await builder.build()
  }

  // nuxt render and middleware
  app.use(nuxt.render)
  app.use(redirectSSL.create({ redirectPort: 443 }))
  
  // Listen the server
  app.listen(port, host)
  consola.ready({
        message: `Server listening on http://${host}:${port}`,
        badge: true
  })
  
  https.createServer(httpsOptions,app).listen(443, host)
  consola.ready({
        message: `Server listening on https://${host}:${port}`,
        badge: true
  })
}

start()

以上一个用于强制 SSL 重定向。对于 CDN,请使用此步骤。 https://nuxtjs.org/docs/2.x/configuration-glossary/configuration-build


推荐阅读