2012-07-22 103 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