Mam statyczną stronę Pojedynczej strony, która jest hostowana w segmencie AWS. Aplikacja jest JavaScript.Aplikacja jednej strony w AWS CloudFront
Mam zainstalowany serwer Cloudfront do dostarczania treści. Zawartość witryny jest przechowywana w Wiadro AWS S3, a Cloudfront służy do szybszego dostarczania treści internetowych dla użytkowników w różnych lokalizacjach.
Ale po skonfigurowaniu strony internetowej mam do czynienia z problemem. Jeśli odświeżę stronę, spowoduje to błąd, ponieważ klucz nie jest obecny. Nie mogę odświeżyć strony lub skopiować adresu URL i wkleić go w innej karcie przeglądarki, aby uzyskać dostęp do tej samej strony.
otrzymuję następujący błąd:
<Error>
<Code>NoSuchKey</Code>
<Message>The specified key does not exist.</Message>
<Key>__build__/home</Key>
<RequestId>36941111717B2006</RequestId> <HostId>wfLt17lDjXhZLqCxRM2zOiDIJSF03/HKdL3V9Oeq3r1glowmlZpavRj0zzBzBgXlXZudiXoc=</HostId>
</Error>
A moje zasady wiadra S3 przekierowania są następujące:
<RoutingRules>
<RoutingRule>
<Condition>
<KeyPrefixEquals>*/</KeyPrefixEquals>
</Condition>
<Redirect>
<ReplaceKeyWith>index.html</ReplaceKeyWith>
</Redirect>
</RoutingRule>
</RoutingRules>
Dzięki za odpowiedź, mam jeszcze jedną wątpliwość Weźmy na przykład jeśli adres URL jest/blog lub /o, a kiedy odświeżymy stronę, najpierw przejdzie przez index.html, a następnie załaduje stronę/blog lub/o. –
Bidyut
Tak, to prawda, i jak SPA: zwykle działają. Jakie zachowanie byłoby optymalne? –
Proszę mnie poprawić, jeśli się mylę, czy możliwe jest załadowanie strony bezpośrednio bez ładowania pliku index.html? Abyśmy mogli szybko załadować żądaną stronę. – Bidyut