2015-02-14 6 views
2

У меня есть большое количество файлов, хранящихся в общем контейнере Azure blob, все из которых ссылаются непосредственно через HTML в моем веб-приложении ASP.NET MVC. В качестве примера путь к одному из изображений в хранилище больших двоичных объектов выглядит так:Скрыть Azure Blob Url

//<my-storage-account-name>.blob.core.windows.net/public/logo.png 

Я хочу, чтобы избежать отображения мое имя учетной записи для хранения в моем исходном коде HTML так, а не:

<img src="//<my-storage-account-name>.blob.core.windows.net/public/logo.png"/> 

I «d предпочитают использовать это:

<img src="/images/logo.png"/> 

Я хочу, чтобы избежать создания маршрута MVC и с помощью двоичного объекта API для загрузки файла в поток ответа так думало web.config решения может быть самым простым решением , Т.е.

<rule name="Image Redirect" stopProcessing="true"> 
    <match url="^images/(.*)$" ignoreCase="false" /> 
    <action type="Redirect" url="//<my-storage-account-name>.blob.core.windows.net/public/{R:1}" redirectType="Permanent" /> 
</rule> 

ВОПРОС: Является ли это самый эффективный метод, учитывая, что любая страница может быть загрузка 30+ изображений одновременно? Или я должен просто использовать публичный URL-адрес blob, несмотря на мои опасения по поводу повышения производительности?

ответ

3

Я нашел Microsoft Практическое занятие, где они рекомендуют вариант web.config URL правила перезаписи:

Hands on Lab: Maintainable Azure Websites: Managing Change and Scale (Июль 16, 2014)

(фрагмент кода - WebSitesInProduction - Ex4 - UrlRewriteRule)

<system.webServer> 
    <rewrite> 
     <rules> 
      <rule name="redirect-images" stopProcessing="true"> 
       <match url="img/(.*)"/> 
       <action type="Redirect" url="http://[YOUR-STORAGE-ACCOUNT].blob.core.windows.net/images/{R:1}"></action> 
      </rule> 
     </rules> 
    </rewrite> 

«. Примечание: URL-перезапись процесс перехвата Web входящего запроса и перенаправления запроса на другой ресурс URL-адрес rewr правила iting определяют механизм перезаписи, когда запрос необходимо перенаправить, и где они должны быть перенаправлены. Правило перезаписи состоит из двух строк: шаблона для поиска в запрошенном URL (обычно, с использованием регулярных выражений) и строки для замены шаблона, если он найден. Для получения дополнительной информации см. Перезапись URL в ASP.NET. "