angularjs html5 в рабочем режиме в виде статических файлов

#angularjs

#angularjs

Вопрос:

Как я могу использовать серверы Amazon S3 для обслуживания Angularjs в виде статических файлов с html5Mode(true) ?

Следил за этим блогом, но застрял на запуске в производство

Ответ №1:

К сожалению (на данный момент), это, похоже, невозможно с использованием встроенных инструментов S3. Вместо этого я подделывал перезапись URL, фактически копируя index.html по любому пути, используемому angular. Вот скрипт, который я использую для автоматизации процесса (моя структура папок основана на yeoman, отсюда и причина, по которой я использую папки app/ и dist/ )

 rm -rf dist-html5mode
for ROUTE in $(grep when app/scripts/app.js | awk -F' '{print $2}' | grep -v '^/$'); do
    echo $ROUTE
    mkdir -p dist-html5mode$(dirname $ROUTE)
    cp dist/index.html dist-html5mode$ROUTE
done
  

Теперь, когда у вас есть заполненная dist-html5mode/ папка, загрузите ее содержимое в корневой каталог вашего S3 bucket и убедитесь, что вы установили для метаданных Content-Type значение text/html .