我在 Godaddy 共享主机上有一个 ASP.NET 应用程序。一切都正常,但当我上传某些文件时,会出现错误“拒绝访问路径'PATH'”。 我尝试了多种方法,如通过 Godaddy 控制面板授予要上传文件的文件夹完全权限。 我还看了这篇文章并尝试按照他所说的去做:http://forums.asp.net/t/1052417.aspx/1 但没有帮助。 有人能建议我哪里出了问题吗?它在 IIS 7 下运行。
“使用Windows托管账户设置目录权限”
http://support.godaddy.com/help/article/6481
如果以上方法无法解决您的问题,请联系您的托管提供商以获取访问权限。
删除该目录的“匿名访问”IIS设置。这样做的结果是,您只能通过托管账户或FTP访问该目录。无论您是否知道托管账户用户名和密码,都无法通过任何Web浏览器访问该目录。
写入 - 应用程序可以写入此目录。
然后它应该可以工作了。 - Niranjan Singhusing System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Collections.Generic;
using System.IO;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
BindGrid();
}
}
protected void BindGrid()
{
string[] filePaths = Directory.GetFiles(Server.MapPath("~/images/"));
List<ListItem> files = new List<ListItem>();
foreach (string filePath in filePaths)
{
files.Add(new ListItem(Path.GetFileName(filePath), filePath));
}
GridView1.DataSource = files;
GridView1.DataBind();
}
protected void btnUpload_Click(object sender, EventArgs e)
{
if (FileUpload1.HasFile)
{
FileUpload1.SaveAs(Server.MapPath("~/images/") + FileUpload1.FileName);
BindGrid();
}
else //enter code here
{
Response.Write("Please select file to upload");
}
}
protected void DownloadFile(object sender, EventArgs e)
{
string filePath = (sender as LinkButton).CommandArgument;
Response.ContentType = ContentType;
Response.AppendHeader("Content-Disposition", "attachment; filename=" + Path.GetFileName(filePath));
Response.WriteFile(filePath);
Response.End();
}
protected void DeleteFile(object sender, EventArgs e)
{
string filePath = (sender as LinkButton).CommandArgument;
File.Delete(filePath);
BindGrid();
}
}