#reactjs #amazon-s3 #react-redux #amazon-cloudfront
#reactjs #amazon-s3 #react-redux #amazon-cloudfront
Вопрос:
У меня есть веб-сайт, размещенный на S3 с CloudFront. Я уже несколько раз развертывал и работал, но теперь он не обновляет корзину s3 после развертывания. Я использовал npm audit fix
для проверки зависимостей и исправления зависимостей. Кроме того, я использовал npm cache clean --force
и удалил package-lock.json
и после этого я его развернул, но он тоже не работал.
Использование команды для развертывания:
npm run build amp;amp; aws s3 sync build/ s3://host
package.json
{
"name": "dashboard",
"version": "0.1.0",
"private": true,
"dependencies": {
"@fnando/cpf": "^0.1.1",
"@rocketseat/unform": "^1.5.1",
"axios": "^0.19.0",
"date-fns": "^2.14.0",
"history": "^4.9.0",
"immer": "^3.2.0",
"lodash": "^4.17.20",
"polished": "^3.4.1",
"prop-types": "^15.7.2",
"react": "^16.9.0",
"react-datepicker": "^2.16.0",
"react-dom": "^16.9.0",
"react-icons": "^3.7.0",
"react-redux": "^7.1.0",
"react-router-dom": "^5.1.2",
"react-scripts": "^3.4.3",
"react-select": "^3.0.4",
"react-skeleton-loader": "^1.0.4",
"react-toastify": "^5.3.2",
"reactotron-react-js": "^3.3.2",
"reactotron-redux": "^3.1.1",
"reactotron-redux-saga": "^4.2.2",
"redux": "^4.0.4",
"redux-persist": "^5.10.0",
"redux-saga": "^1.0.5",
"styled-components": "^4.3.2",
"yup": "^0.27.0"
},
"scripts": {
"start": "react-app-rewired start",
"build": "react-app-rewired build",
"test": "react-app-rewired test",
"eject": "react-scripts eject"
},
"eslintConfig": {
"extends": "react-app"
},
"browserslist": {
"production": [
">0.2%",
"not dead",
"not op_mini all"
],
"development": [
"last 1 chrome version",
"last 1 firefox version",
"last 1 safari version"
]
},
"devDependencies": {
"babel-plugin-root-import": "^6.4.1",
"customize-cra": "^0.5.0",
"prettier": "^1.18.2",
"react-app-rewired": "^2.1.3"
}
}
Ответ №1:
Скорее всего, Cloudfront кэширует предыдущее развертывание.
Вы можете либо изменить настройки кэша, чтобы полностью отключить кэширование, либо выполнить аннулирование вашего дистрибутива для эффективной очистки кэша.
aws cloudfront create-invalidation --distribution-id distribution_ID --paths "/*"