2013-06-25 4 views
1

У меня проблема. Моя задача состояла в переносе старого приложения с более старого сервера на новый. После некоторой настройки все было в порядке, пока я не заметил, что приложение больше не хочет работать.Странное поведение приложения из IIS8

Ну, я могу войти в систему и загрузить файлы, это прекрасно работает, но если я попытаюсь загрузить некоторые файлы, все начнет идти не так. Даже если я перезапущу сервер или переработаю Application-Pool, я больше не могу загружать его.

Что я нашел, если я открываю браузер прямо на сервере и пытаюсь войти в систему и загрузить файл через localhost, приложение начнет работать, и сразу после этого можно использовать любой другой компьютер, но просто на какое-то время, вроде 20 минут, и после этого больше не работает ...

Я действительно смущаюсь из-за этого, потому что, как я уже сказал, я могу войти и скачать файлы (в любое время), но если я попробую чтобы загрузить что-то, я должен сначала перейти на сервер и запустить через localhost приложение и сразу после этого начать работать ...

Сервер - новый 2012 с IIS8, работающий под .Net 4.5 classic (когда я выбираю Интегрированный он вообще не работает).

Это часть журнала HTTP:

#Software: Microsoft HTTP API 2.0 
#Version: 1.0 
#Date: 2013-06-25 16:28:18 
#Fields: date time c-ip c-port s-ip s-port cs-version cs-method cs-uri sc-status s-siteid s-reason s-queuename 
2013-06-25 16:28:18 ::1%0 49188 ::1%0 80 - - - - - Timer_ConnectionIdle - 
2013-06-25 16:28:18 ::1%0 49196 ::1%0 80 - - - - - Timer_ConnectionIdle - 
2013-06-25 16:28:22 ::1%0 49197 ::1%0 80 - - - - - Timer_ConnectionIdle - 
2013-06-25 16:29:18 24.134.210.170 52690 10.10.10.100 80 HTTP/1.1 POST /DownloadManager/DMUpload.aspx?folderId=22767&guid=612219520&cancel=1 - 1 Timer_ConnectionIdle .NET+v4.5+Classic 
2013-06-25 16:31:24 24.134.210.170 52693 10.10.10.100 80 - - - - - Timer_ConnectionIdle - 
2013-06-25 16:31:29 24.134.210.170 52750 10.10.10.100 80 - - - - - Timer_ConnectionIdle - 
2013-06-25 16:31:29 24.134.210.170 52749 10.10.10.100 80 - - - - - Timer_ConnectionIdle - 
2013-06-25 16:33:39 ::1%0 49201 ::1%0 80 - - - - - Timer_ConnectionIdle - 
2013-06-25 16:33:49 ::1%0 49212 ::1%0 80 - - - - - Timer_ConnectionIdle - 
2013-06-25 16:33:54 ::1%0 49213 ::1%0 80 - - - - - Timer_ConnectionIdle - 
2013-06-25 16:34:10 24.134.210.170 52766 10.10.10.100 80 - - - - - Timer_ConnectionIdle - 
2013-06-25 16:37:46 24.134.210.170 52799 10.10.10.100 80 - - - - - Timer_ConnectionIdle - 
2013-06-25 16:37:46 24.134.210.170 52767 10.10.10.100 80 - - - - - Timer_ConnectionIdle - 
2013-06-25 16:37:46 24.134.210.170 52764 10.10.10.100 80 - - - - - Timer_ConnectionIdle - 
2013-06-25 16:37:46 24.134.210.170 52794 10.10.10.100 80 - - - - - Timer_ConnectionIdle - 
2013-06-25 16:47:48 24.134.210.170 52916 10.10.10.100 80 - - - - - Timer_ConnectionIdle - 
2013-06-25 16:47:54 24.134.210.170 52917 10.10.10.100 80 - - - - - Timer_ConnectionIdle - 
2013-06-25 17:00:27 24.134.210.170 53004 10.10.10.100 80 - - - - - Timer_ConnectionIdle - 
2013-06-25 17:12:26 24.134.210.170 53123 10.10.10.100 80 - - - - - Timer_ConnectionIdle - 
2013-06-25 17:12:31 24.134.210.170 53124 10.10.10.100 80 - - - - - Timer_ConnectionIdle - 
2013-06-25 17:12:31 24.134.210.170 53126 10.10.10.100 80 - - - - - Timer_ConnectionIdle - 
2013-06-25 17:13:04 24.134.210.170 53152 10.10.10.100 80 HTTP/1.1 POST /DownloadManager/DMUpload.aspx?folderId=22767&guid=289442538&cancel=1 400 1 BadRequest .NET+v4.5+Classic 
2013-06-25 17:13:21 24.134.210.170 53152 10.10.10.100 80 HTTP/1.1 POST /DownloadManager/DMUpload.aspx?folderId=22767&guid=289442538&cancel=1 400 1 Connection_Dropped .NET+v4.5+Classic 
2013-06-25 17:15:50 24.134.210.170 53161 10.10.10.100 80 HTTP/1.1 POST /DownloadManager/DMUpload.aspx?folderId=22767&guid=536693230&cancel=1 400 1 BadRequest .NET+v4.5+Classic 
2013-06-25 17:16:00 24.134.210.170 53157 10.10.10.100 80 - - - - - Timer_ConnectionIdle - 
2013-06-25 17:16:47 24.134.210.170 53161 10.10.10.100 80 HTTP/1.1 POST /DownloadManager/DMUpload.aspx?folderId=22767&guid=536693230&cancel=1 400 1 Connection_Dropped .NET+v4.5+Classic 
2013-06-25 17:24:00 24.134.210.170 53160 10.10.10.100 80 - - - - - Timer_ConnectionIdle - 
2013-06-25 17:24:05 24.134.210.170 53176 10.10.10.100 80 - - - - - Timer_ConnectionIdle - 
2013-06-25 17:27:16 ::1%0 49251 ::1%0 80 - - - - - Timer_ConnectionIdle - 
2013-06-25 17:27:31 24.134.210.170 53274 10.10.10.100 80 - - - - - Timer_ConnectionIdle - 
2013-06-25 17:29:55 24.134.210.170 53291 10.10.10.100 80 - - - - - Timer_ConnectionIdle - 
2013-06-25 17:29:55 24.134.210.170 53290 10.10.10.100 80 - - - - - Timer_ConnectionIdle - 
2013-06-25 17:29:55 24.134.210.170 53292 10.10.10.100 80 - - - - - Timer_ConnectionIdle - 
2013-06-25 17:32:17 24.134.210.170 53319 10.10.10.100 80 - - - - - Timer_ConnectionIdle - 
2013-06-25 17:32:52 24.134.210.170 53293 10.10.10.100 80 - - - - - Timer_ConnectionIdle - 
2013-06-25 17:32:52 24.134.210.170 53288 10.10.10.100 80 - - - - - Timer_ConnectionIdle - 

Я действительно apreciate некоторой помощи, потому что я действительно не понимаю, почему это hapend. Действительно странно, что я должен начать направлять в ПРИМЕНЕНИЯ сервера, прежде чем я могу использовать его в другом компьютере ...

... Редактировать ...

Ok вот web.config от Aplication :

<?xml version="1.0" encoding="UTF-8"?> 
<configuration> 
    <configSections> 
     <section name="UploadModuleManagement" type="DimpleSoftwares.KFileUploadPlus.UploadModule,DimpleSoftwares.KFileUploadPlus" /> 
    </configSections> 
    <UploadModuleManagement bufferSize="2000" />  
    <appSettings>  
     <add key="TempDir" value="./uploads" />    
    </appSettings> 
    <system.web> 
     <pages enableEventValidation="false" validateRequest="false" /> 
     <httpHandlers> 
      <add verb="GET" path="FtbWebResource.axd" type="FreeTextBoxControls.AssemblyResourceHandler, FreeTextBox" /> 
     </httpHandlers> 
     <httpModules> 
      <add name="UploadModule" type="DimpleSoftwares.KFileUploadPlus.UploadModule,DimpleSoftwares.KFileUploadPlus" /> 
     </httpModules> 
     <compilation defaultLanguage="c#" debug="true" /> 
    <customErrors mode="off" />          
     <authentication mode="Forms"> 
      <forms name="DMAuthCookie" loginUrl="DMLogin.aspx" protection="All" timeout="240" slidingExpiration="true" /> 
     </authentication> 
     <authorization> 
      <deny users="?" /> 
     </authorization> 
     <trace enabled="false" requestLimit="10" pageOutput="false" traceMode="SortByTime" localOnly="true" /> 
     <sessionState mode="InProc" stateConnectionString="tcpip=127.0.0.1:42424" sqlConnectionString="data source=127.0.0.1;Trusted_Connection=yes" cookieless="false" timeout="240" /> 
     <globalization requestEncoding="utf-8" responseEncoding="utf-8" /> 
     <httpRuntime maxRequestLength="1048576" executionTimeout="14400" /> 
    </system.web> 
    <system.webServer> 
     <security> 
      <requestFiltering> 
      <requestLimits maxAllowedContentLength="1073741824" /> 
      </requestFiltering> 
     </security> 
    </system.webServer> 
</configuration> 

И это загрузить файл:

<%@ Page language="c#" Codebehind="DMUpload.aspx.cs" AutoEventWireup="false" Inherits="DownloadManager.DMUpload" EnableSessionState="ReadOnly"%> 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" > 
<HTML> 
    <HEAD> 
     <title>DMUpload</title> 
     <meta content="Microsoft Visual Studio .NET 7.1" name="GENERATOR"> 
     <meta content="C#" name="CODE_LANGUAGE"> 
     <meta content="JavaScript" name="vs_defaultClientScript"> 
     <meta content="http://schemas.microsoft.com/intellisense/ie5" name="vs_targetSchema"> 
     <LINK href="StyleSheet.css" type="text/css" rel="stylesheet"> 
    </HEAD> 
    <body MS_POSITIONING="GridLayout"> 
     <form id="Form1" onSubmit="uploadpop(this);" method="post" encType="multipart/form-data" runat="server"> 
      <TABLE class="navigation" id="tbNavigation" cellSpacing="0" cellPadding="0" width="100%" border="0"> 
       <TR> 
        <TD align="right"> 
      <asp:panel id="Panel4" runat="server" CssClass="panelButtons" Width="800px"> 
      <asp:button id=btSave tabIndex=3 runat="server" CssClass="butt" Text="Save"></asp:button> 
      <asp:button id=btBack tabIndex=3 runat="server" CssClass="butt" Text="back"></asp:button> 
      <asp:button id=btLogout tabIndex=3 runat="server" CssClass="butt" Text="Logout"></asp:button> 
        </asp:panel> 
      </TD> 
       </TR> 
       <tr> 
        <TD align="left"> 
      <asp:panel id="Panel1" runat="server" CssClass="panelBreadcrumb"></asp:panel> 
      <asp:label id="lbBreadCrumb" runat="server" Font-Bold="True"></asp:label> 
      </TD> 
       </tr> 
      </TABLE> 
      <asp:label id="lbWarten" style="Z-INDEX: 103; LEFT: 24px; POSITION: absolute; TOP: 248px" runat="server" Height="40px" ForeColor="Red" Font-Size="Medium" Width="536px">please wait...</asp:label> 
     <asp:panel id="panelUpload" style="Z-INDEX: 104; LEFT: 24px; POSITION: absolute; TOP: 96px" runat="server" Height="104px" Width="528px"> 
     <asp:label id=Label1 runat="server" Width="304px">File:</asp:label> 
     <INPUT id=uploadFile1 style="WIDTH: 536px; HEIGHT: 22px" type=file size=70 runat="server"> 
     <INPUT id=uploadFile2 style="WIDTH: 536px; HEIGHT: 22px" type=file size=70 runat="server"> 
     <INPUT id=uploadFile3 style="WIDTH: 536px; HEIGHT: 22px" type=file size=70 runat="server"> 
     <INPUT id=uploadFile4 style="WIDTH: 536px; HEIGHT: 22px" type=file size=70 runat="server"> 
     <INPUT id=uploadFile5 style="WIDTH: 536px; HEIGHT: 22px" type=file size=70 runat="server"> 
      </asp:panel> 
    </form> 
     <script language="javascript"> 

      document.getElementById("lbWarten").style.visibility = "hidden"; 

      function uploadpop(inForm) 
      { 
       document.getElementById("lbWarten").style.visibility = "visible"; 

       if(inForm.uploadFile1 != null) 
       { 
        if( inForm.uploadFile1.value !="" 
         || inForm.uploadFile2.value !="" 
         || inForm.uploadFile3.value !="" 
         || inForm.uploadFile4.value !="" 
         || inForm.uploadFile5.value !="") 
        { 
         strUniqueID = Math.floor(Math.random() * 1000000) * ((new Date()).getTime() % 1000);     
         thePos = inForm.action.indexOf("?"); 
/* 
         if (thePos >= 0) 
          inForm.action = inForm.action.substring(0, thePos); 
         inForm.action += "?guid=" + strUniqueID + "&cancel=1"; 
*/ 
         if (thePos >= 0) 
          inForm.action += "&guid=" + strUniqueID + "&cancel=1"; 
         else 
          inForm.action += "?guid=" + strUniqueID + "&cancel=1"; 

         window.open("DMProgressBar.aspx?guid=" + strUniqueID,"","toolbar=0,scrollbars=0,location=0,status=0,menubar=0,resizable=0,height=275,width=600,top=70,left=100"); 
        } 
       }    
       inForm.submit(); 
       return true; 
      } 

      function ClearInput() 
      { 
       node = document.getElementById("panelUpload"); 
       if(node != null) 
       { 
//     node.removeNode(true); 
        node.parentNode.removeChild(node); 
       } 
       return true; 
      } 

     </script> 
    </body> 
</HTML> 
+1

Вам нужно указать некоторые сведения о том, что делает код и как он это делает. – Geoff

+2

Этот журнал не помогает вообще. Каков ваш web.config, был ли пул такой же версии с приложением? правильно ли вы установили права доступа к файлам, можете ли вы запустить простую тестовую страницу? – Aristos

+0

Вы должны уточнить, что не работает. Всплывающее окно загрузки не работает? Вы получаете ошибку HTTP? – Jacob

ответ

0

Ну, я думаю, что подмигнули работает. Я изменить некоторые параметры в файле загрузки:

<httpRuntime maxRequestLength="1048576" executionTimeout="14400" /> 

ExecutionTimeout была слишком высока, я просто уменьшить до 45 сек и расширения в IIS на sessiontime.

До сих пор работает и надеется остаться таким!

+0

Я не уверен, что это решение, так как тайм-аут выполнения только даст вам быстрый ответ в случае сбоя. Это позволит вам выполнить запрос в течение 45 секунд окна. –

+0

И как я могу отслеживать сбои? Теперь я не очень уверен, что это php или приложение. Дело в том, почему у меня есть некоторые таймауты, а иногда нет. – Emal011