it-swarm.com.de

Erhöhen des Anforderungszeitlimits in IIS

So erhöhen Sie das Anforderungszeitlimit in IIS 7.0? Das Gleiche geschieht auf der Registerkarte "Anwendung" in ASP Konfigurationseinstellungen in IIS 6.0 Ich kann den asp.net - Konfigurationsabschnitt in IIS 7.0 nicht finden

138
Dotnet Rocks

Fügen Sie dies zu Ihrer Web-Konfiguration hinzu

<system.web>
    <httpRuntime executionTimeout="180" />
</system.web>

https://msdn.Microsoft.com/en-us/library/e1f13641 (v = vs.85) .aspx

Optionales TimeSpan-Attribut.

Gibt die maximale Anzahl von Sekunden an, die eine Anforderung ausgeführt werden darf, bevor sie von ASP.NET automatisch heruntergefahren wird.

Dieses Zeitlimit gilt nur, wenn das Debug-Attribut im Kompilierungselement "False" ist. Setzen Sie dieses Zeitlimit nicht auf einen großen Wert, um das Herunterfahren der Anwendung während des Debuggens zu verhindern.

Die Standardeinstellung ist "00:01:50" (110 Sekunden).

174
Jeff Doolittle

Klicken Sie im IIS Manager mit der rechten Maustaste auf die Site und gehen Sie zu Web verwaltenSite -> Erweiterte Einstellungen. Unter der Option Connection Limits sollte Connection Timeout angezeigt werden.

67
Greg Shackles

Fügen Sie dies zu web.config hinzu, um das Zeitlimit für Anforderungen zu erhöhen

<system.web>
    <httpRuntime executionTimeout="180" />
</system.web>

und für eine bestimmte Seite fügen Sie dies hinzu

<location path="somefile.aspx">
    <system.web>
        <httpRuntime executionTimeout="180"/>
    </system.web>
</location>

Der Standardwert beträgt 90 Sekunden für .NET 1.x.

Der Standardwert von 110 Sekunden für .NET 2.0 und höher.

37
Rae Lee

In IIS> = 7 hat ein Abschnitt <webLimits>ConnectionTimeout, HeaderWaitTimeout, MaxGlobalBandwidth und MinFileBytesPerSec IIS 6 Metabasis-Einstellungen.

Beispielkonfiguration:

<configuration>
   <system.applicationHost>
      <webLimits connectionTimeout="00:01:00"
         dynamicIdleThreshold="150"
         headerWaitTimeout="00:00:30"
         minBytesPerSecond="500"
      />
   </system.applicationHost>
</configuration>

Als Referenz: Weitere Informationen zu diesen Einstellungen finden Sie in IIS hier zu finden . Außerdem konnte ich diesen Abschnitt nicht über den "Konfigurationseditor" des IIS - Managers zur web.config hinzufügen, obwohl er angezeigt wurde, nachdem ich ihn hinzugefügt und die Konfiguration durchsucht hatte.

28
AndrewPK

Ich weiß, dass die Frage ASP betraf, aber vielleicht findet jemand diese Antwort hilfreich.

Wenn Sie einen Server hinter IIS 7.5 haben (z. B. Tomcat). In meinem Fall habe ich eine Serverfarm mit Tomcat-Server konfiguriert. In diesem Fall können Sie das Zeitlimit mit dem Manager IIS ändern:

  • gehen Sie zu Serverfarmen -> {Servername} -> Proxy
  • ändern Sie den Wert im Eingabefeld Timeout
  • klicken Sie auf Anwenden (obere rechte Ecke)

oder du kannst es in der cofig datei ändern:

  • öffne % WinDir%\System32\Inetsrv\Config\applicationHost.config
  • passen Sie die Server WebFarm Konfiguration so an, dass sie der folgenden ähnelt

Beispiel:

<webFarm name="${SERVER_NAME}" enabled="true"> 
  <server address="${SERVER_ADDRESS}" enabled="true">
    <applicationRequestRouting httpPort="${SERVER_PORT}" />
  </server>
  <applicationRequestRouting>
    <protocol timeout="${TIME}" />
  </applicationRequestRouting>
</webFarm>

Das $ {TIME} hat das Format HH: mm: ss (Wenn Sie also 90 Sekunden einstellen möchten, geben Sie dort 00:01:30 ein.)

Im Falle von Tomcat (und wahrscheinlich anderen Servlet - Containern) müssen Sie daran denken, das Timeout in der zu ändern % Tomcat_DIR%\conf\server.xml (Suchen Sie einfach nach dem connectionTimeout Attribut im Connector Tag und denken Sie daran, dass es in Millisekunden angegeben ist.)

10
Paweł Grześ

Im Folgenden finden Sie Schritte zur Behebung Ihres Problems.

  1. Öffnen Sie Ihren IIS
  2. Gehen Sie zur Option " Sites ".
  3. Rechtsklick mit der Maus.
  4. Öffnen Sie dann die Eigenschaft " Website verwalten ".
  5. Klicken Sie dann auf " Erweiterte Einstellungen ".
  6. Erweitern Sie den Abschnitt " Verbindungsbeschränkungen ", hier können Sie Ihre " Verbindungsbeschränkung "

enter image description here

9
Anjan Kant

Verwenden Sie den folgenden Power Shell-Befehl, um das Ausführungszeitlimit (Request Timeout) zu ändern.

Bitte beachten Sie, dass ich dies für die Standardwebsite angegeben habe. Bevor Sie diese verwenden, ändern Sie bitte die Website und versuchen Sie, diese zu verwenden.

 Set-WebConfigurationProperty -pspath 'MACHINE/WEBROOT/APPHOST/Default Web Site'  -filter "system.web/httpRuntime" -name "executionTimeout" -value "00:01:40"

Oder Sie können den folgenden C # -Code verwenden, um dasselbe zu tun

using System;
using System.Text;
using Microsoft.Web.Administration;

internal static class Sample {

    private static void Main() {

        using(ServerManager serverManager = new ServerManager()) { 
            Configuration config = serverManager.GetWebConfiguration("Default Web Site");

            ConfigurationSection httpRuntimeSection = config.GetSection("system.web/httpRuntime");
            httpRuntimeSection["executionTimeout"] = TimeSpan.Parse("00:01:40");

            serverManager.CommitChanges();
        }
    }
}

Oder Sie können das JavaScript verwenden.

var adminManager = new ActiveXObject('Microsoft.ApplicationHost.WritableAdminManager');
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST/Default Web Site";

var httpRuntimeSection = adminManager.GetAdminSection("system.web/httpRuntime", "MACHINE/WEBROOT/APPHOST/Default Web Site");
httpRuntimeSection.Properties.Item("executionTimeout").Value = "00:01:40";

adminManager.CommitChanges();

Oder Sie können die AppCmd-Befehle verwenden.

appcmd.exe set config "Default Web Site" -section:system.web/httpRuntime /executionTimeout:"00:01:40" 
3
Suraj Dixit