Я развернул приложение nuxt.js в digitalocean.Он обслуживается экспресс-API и базой данных MySQL.Проект настроен в корне капли с двумя папками
/ frontend
/ backend
. В веб-интерфейсе содержится приложение nuxt.Nuxt работает на 127.0.0.1:3000, поэтому я настроил обратный прокси-сервер nginx для отображения приложения при вызове URL.
Внутренний сервер содержит сервер экспресс-обслуживания, который работает на 127.0.0.1:42021
При первой загрузке приложение работало отлично, но после того, как я получил через ssl сертификат, давайте зашифруем, что внешний интерфейс не будет взаимодействовать с внутренним.Сайт будет загружать данные из базы данных, которая вызывается в nuxtserverinit, потому что это выполняется на стороне сервера, но если я попытаюсь войти, это не сработает.В chrome я получаю Failed to load resource: ERR_CONNECTION_REFUSED
, а консоль safari говорит: [Error] XMLHttpRequest cannot load http://127.0.0.1:42021/auth/login due to access control checks.
Все, на что я смотрел, говорит, что мне нужно сделать и бэкэнд https, но я не могу этого добиться.Я пробовал
var https = require('https')
...
https.createServer({
key: fs.readFileSync('server.key'),
cert: fs.readFileSync('server.cert') //with self signed key/cert for testing
}, app).listen(config.port, '127.0.0.1')
, но сервер вообще не запускается.
Я также попытался добавить <meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests">
в начало интерфейса, но это не помогло.
Кто-нибудь может объяснить, что мне нужно сделать, чтобы мой экспресс-сервер был таким, каким он был до получения сертификата ssl?
Спасибо за вашу помощь.