SORU
28 NİSAN 2013, Pazar


Web Sitesi Barındırma Index.html Tüm Yollar S3 Statik Route

S3 HTML5 pushStates kullanacağı bir javascript uygulaması barındırmak için kullanıyorum. Sorun kullanıcı herhangi bir URL yer imleri, hiçbir şey çözümlenmez. İhtiyacım olan şey tüm url istekleri alıp S3 kovama kök index.html hizmet yeteneği, sadece tam bir yönlendirme yapmak yerine. Sonra javascript başvurum URL ayrıştırmak ve uygun sayfa hizmet verebilir.

S3 yönlendirmeleri yapmak yerine tüm URL istekleri için index.html hizmet söylemek için herhangi bir yolu var mı? Bu apache bu örnekte olduğu gibi tek bir index.html servis tarafından gelen tüm istekleri işlemek için kurmaya benzer olacaktır: http://stackoverflow.com/a/10647521/1762614. Gerçekten bir web sunucusu sadece bu yollar işlemek için uzak durmak istiyorum. S3 yapıyor her şey çok çekici.

CEVAP
1 HAZİRAN 2013, CUMARTESİ


Bu işe almaya başardım yolu aşağıdaki gibidir:

Yönlendirme Kuralları DüzenleyinS3 bölümüne etki Konsolu, aşağıdaki kurallar ekleyin:

<RoutingRules>
  <RoutingRule>
    <Condition>
      <HttpErrorCodeReturnedEquals>404</HttpErrorCodeReturnedEquals>
    </Condition>
    <Redirect>
      <HostName>yourdomainname.com</HostName>
      <ReplaceKeyPrefixWith>#!/</ReplaceKeyPrefixWith>
    </Redirect>
  </RoutingRule>
</RoutingRules>

Bu 404 yolu karma-bang bir sürümü ile kök etki alanına bulunamadı neden olan tüm yolları yönlendirir. http://yourdomainname.com/posts /posts dosya yok sağlanan http://yourdomainname.com/#!/posts yönlendirecektir.

HTML5 pushStates ancak kullanmak için bu isteği alıp el ile uygun pushState karma-bang yolu temel kurmalıyız. Ekle index.html dosyanızın en üstüne bu kadar:

<script>
  history.pushState({}, "entry page", location.hash.substring(1));
</script>

Bu karma kapmak ve HTML5 pushState dönüşür. Bu noktadan pushStates uygulaması olmayan karma-bang yolları için kullanabilirsiniz.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • GALERNAYA20

    GALERNAYA20

    19 NİSAN 2011
  • Video Copilot

    Video Copilo

    21 EYLÜL 2006
  • Watcher3223

    Watcher3223

    15 Kasım 2007