2012-07-22 115 views
0

我試圖將圖片上傳到服務器。這裏是我的代碼:圖片上傳時訪問路徑

try 
{ 
    fuImage.SaveAs(Server.MapPath("..\\App_Upload\\Product\\") + fileName); 
} 
catch (Exception exc) 
{ 
    dvMessage.InnerHtml = WebUtil.CreateAlert(WebUtil.NotifyMessage.Warning,"İşlem Başarısız!", "Resim Dosyası eklerken hata oluştu. HATA:" + exc.Message); 
    return; 
} 

它工作在我的本地計算機,但是,服務器,它返回Access to the path 'D:\inetpub\karahanresim.com\test.karahanresim.com\App_Upload\Product\2012722165754.jpg' is denied.

你知道我什麼建議嗎?

回答

1

您必須將足夠的權限授予您的網站配置爲在IIS中運行的帳戶,以便它可以寫入此文件夾。

順便說一句我就重寫,像這樣的代碼:

var productPath = Server.MapPath("~/App_Upload/Product"); 
fuImage.SaveAs(Path.Combine(productPath, fileName)); 
+0

我給了FileZilla的所有文件夾寫入權限。 – cagin 2012-07-22 14:09:58

+1

您或者給了錯誤的帳戶權限,或者您沒有正確授予寫權限。就這麼簡單。不要在你的代碼中查找問題,也不要(除了我注意到的小問題)。這是一個配置/權限問題。如果你有配置你的Web服務器的具體問題,你應該在http://serverfault.com上發佈。堆棧溢出是一個編程相關的問答網站。 – 2012-07-22 14:10:37

+0

我跟託管公司討論了porblem。他們告訴我:「你不能給ftp應用上的文件夾權限。」他們給了權限。 – cagin 2012-08-03 08:59:14

0

記住IIS緩存的權限。如果您更改服務器上的權限,您必須重置IIs

C:\> iisreset