#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
.