2016-09-01 61 views
0

路由有沒有一種方法,我可以忽略了一個關鍵的前綴?或重定向到一個網址,而無需更改地址欄中的網址?忽略鍵前綴,而在S3路由策略

舉例來說,我有以下網址x.com/y/uuid/我想S3路由我x.com/y/index.html無需拆卸/更換/uuid/

回答

1

重定向到URL,而不在地址欄更改URL

然後它不會是一個重定向。根據定義,HTTP重定向將瀏覽器發送到新位置,並且地址欄被重寫。

某些網絡服務器軟件有一個內部重寫URL以供後續處理的概念,以便目標解析爲不同於其他方式的路徑,但S3不支持這一點 - 除了自動索引文檔的情況,其中example.com/foo將觸發一個瀏覽器重定向到example.com/foo/其然後內部由S3被重寫到與密鑰foo/index.html返回對象,如果它的存在。 (瀏覽器重定向保持相對路徑理智;沒有它,在/foo/index.html相對路徑會被不正確地解釋爲相對於根,而不是相對於/foo/ - 再現指數文檔時所有正確-行爲web服務器這樣做)

S3自定義錯誤文檔也基本上是一個內部重寫,當然。

但你考慮什麼是不支持S3。

S3前面的CloudFront甚至可以做與您正在尋找的內容完全相反的內容,例如,example.com/bar.html可以作爲example.com/foo/bar.html的請求呈現給後端,而不需要瀏覽器重定向(通過配置自定義來源和起源路徑設置爲/foo),但既沒有服務支持刪除/隱藏/遮蔽路部分沒有瀏覽器重定向。