Хорошо, большая проблема, поскольку это затрагивает два проекта на нашем новом сервере. У нас есть файл, который загружается пользователями, файлы загружаются с помощью HTTPHandler. После перемещения сайта на сервер и установки SSL загрузка перестала работать, и мы получаем сообщение об ошибке «Невозможно загрузить DownloadDocument.ashx« с сайта ». DownloadDocument.ashx - это страница обработчика, заданная в файле web.config, и Кнопка, которая идет там, является гиперссылкой с идентификатором документа в виде строки запроса. Я прочитал статью на http://support.microsoft.com/kb/316431 и прочитал несколько других запросов на этом сайте, но, похоже, ничего не работает. Эта проблема возникает только в IE и работает нормально, когда я запускаю его на сервере в http вместо https.
public override void HandleRequest(HttpContext context)
{
Guid guid = new Guid(context.Request.QueryString["ID"]);
DataTable dt = Documents.GetDocument(guid);
if (dt != null)
{
context.Response.Cache.SetCacheability(HttpCacheability.Private);
context.Response.AddHeader("content-disposition", string.Format("attachment; filename={0}", dt.Rows[0]["DocumentName"].ToString()));
context.Response.AddHeader("Content-Transfer-Encoding", "binary");
context.Response.AddHeader("Content-Length", ((byte[])dt.Rows[0]["Document"]).Length.ToString());
context.Response.ContentType = string.Format("application/{0}", dt.Rows[0]["Extension"].ToString().Remove(0, 1));
context.Response.Buffer = true;
context.Response.BinaryWrite((byte[])dt.Rows[0]["Document"]);
context.Response.Flush();
context.Response.End();
}
}
Выше приведен мой текущий код для запроса. Я использовал базовый обработчик на http://haacked.com/archive/2005/03/17/AnAbstractBoilerplateHttpHandler.aspx.
Любые идеи о том, что это может быть и как мы можем это исправить.
Заранее спасибо за все ответы.