Heim  >  Artikel  >  Web-Frontend  >  So aktivieren Sie Cross-Origin Resource Sharing (CORS) auf IIS7: Eine Schritt-für-Schritt-Anleitung

So aktivieren Sie Cross-Origin Resource Sharing (CORS) auf IIS7: Eine Schritt-für-Schritt-Anleitung

Susan Sarandon
Susan SarandonOriginal
2024-10-27 02:07:30509Durchsuche

How to Enable Cross-Origin Resource Sharing (CORS) on IIS7: A Step-by-Step Guide

Ermöglichen der ursprungsübergreifenden Ressourcenfreigabe auf IIS7: Ein umfassender Leitfaden

Einführung

Cross -Origin Resource Sharing (CORS) ermöglicht das Abrufen und Nutzen von Ressourcen aus einer Domäne durch Anwendungen eines anderen Ursprungs. Um CORS auf IIS7 zu aktivieren, befolgen Sie diese Schritte:

Konfiguration

  1. Benutzerdefinierte Header hinzufügen:

    • Navigieren Sie zur web.config-Datei für die Hosting-Domäne.
    • Fügen Sie die folgenden benutzerdefinierten Header im hinzu. Abschnitt:
    <customHeaders>
      <add name="Access-Control-Allow-Origin" value="*" />
      <add name="Access-Control-Allow-Methods" value="GET,PUT,POST,DELETE,OPTIONS" />
      <add name="Access-Control-Allow-Headers" value="Content-Type" />
    </customHeaders>

Fehlerbehebung

Wenn Sie trotz der Konfiguration immer noch eine 405-Antwort erhalten, kann dies daran liegen IIS7s Umgang mit HTTP-OPTIONEN.

Option 1: IIS7-Handlerzuordnungen ändern

  1. Öffnen Sie den IIS-Manager.
  2. Navigieren Sie zu Handlerzuordnungen.
  3. Suchen Sie „OPTIONSVerbHandler“.
  4. Ändern Sie „ProtocolSupportModule“ in „IsapiHandler“.
  5. Setzen Sie die ausführbare Datei auf:

    %windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll

Option 2: OPTIONS-Verb im Code behandeln

  1. Überschreiben Sie die BeginRequest-Methode in Ihrem Anwendungscode:

    protected void Application_BeginRequest(object sender,EventArgs e)
    {
        HttpContext.Current.Response.AddHeader("Access-Control-Allow-Origin", "*");
    
        if(HttpContext.Current.Request.HttpMethod == "OPTIONS")
        {
            // Handle pre-flight OPTIONS call from browser
            HttpContext.Current.Response.AddHeader("Access-Control-Allow-Methods", "GET, POST, PUT, DELETE");
            HttpContext.Current.Response.AddHeader("Access-Control-Allow-Headers", "Content-Type, Accept");
            HttpContext.Current.Response.AddHeader("Access-Control-Max-Age", "1728000" );
            HttpContext.Current.Response.End();
        }
    }

Fazit

Die Aktivierung von CORS auf IIS7 erfordert sowohl Konfigurationsaktualisierungen als auch potenzielle Fehlerbehebung. Indem Sie die oben beschriebenen Schritte befolgen, können Sie ursprungsübergreifende Interaktionen mit Zuversicht ermöglichen.

Das obige ist der detaillierte Inhalt vonSo aktivieren Sie Cross-Origin Resource Sharing (CORS) auf IIS7: Eine Schritt-für-Schritt-Anleitung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn