2016-03-04 19 views
0

有必要將所有文件站點(圖片,文檔等)放在單獨的文件服務器(這裏是dav服務器或Amazon c3)上,但html中的url未被更改,例如: www.site.com/pictures/1.jpg在html中查看www.davserver/sitename/pictures/1.jpg/ 我嘗試使用帶有RewritePath的HttpModule,但得到的錯誤是虛擬路徑錯誤。重寫到文件服務器

if (strCurrentUrl.Contains("/files/")) 
    { 
    app.Context.RewritePath(davserver +strCurrentUrl); 
    } 

我可以使用iss + c#或只是ngix +重寫嗎?

+0

據我所知[IIS UrlRewrite](HTTP ://www.iis.net/learn/extensions/url-rewrite-module/creating-rewrite-rules-for-the-url-rewrite-module)應該可以在沒有任何編碼的情況下進行配置。 – Filburt

回答

0

RewritePath用於重寫URL到內部服務器的,你想要做的是重定向沒有改寫, 林更喜歡你做這樣的事情:

string fullOrigionalpath = HttpContext.Current.Request.Url.ToString(); 
if (fullOrigionalpath.Contains("file")) 
{      
    HttpContext.Current.Response.Redirect("http://stackoverflow.com"); 
}