приложение react, размещенное в s3, не обновляется после развертывания

#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 "/*"