2016-08-07 13 views
0

Ich habe einen Knoten js-Anwendung, die in meinem localhost und in AWS funktioniert. Ich entfalteten sie mit folgenden web.config-Datei im Stammverzeichnis des Verzeichnisses Azure:Knoten js azure Fehler beim Zugriff auf Routen

<?xml version="1.0" encoding="utf-8"?> 
<configuration> 
    <system.webServer> 
     <handlers> 
      <add name="iisnode" path="index.js" verb="*" modules="iisnode" /> 
     </handlers> 
     <iisnode nodeProcessCountPerApplication="4" /> 
    </system.webServer> 
</configuration> 

Außerdem habe ich eine Datei iisnode.yml, auch an der Wurzel des Verzeichnisses, mit der Zeile:

nodeProcessCountPerApplication: 4

das root-Verzeichnis enthält eine Datei index.js die der Eintrittspunkt in der Anwendung ist, und es so konfiguriert ist, eine ausdrückliche app auf Port process.env.PORT || 1337 auszuführen. In package.json lautet der Startbefehl node index.js.

wird die Anwendung bereitgestellt, aber für jede Route versuche ich, ich sehe die folgenden Fehler zu laufen:

The resource you are looking for has been removed, had its name changed, or is temporarily unavailable.

Antwort

0

Bitte versuchen, den Überschreibmodus in der web.config Datei neben den handlers Tag unter system.webServer hinzufügen tag:

  <rewrite> 
       <rules> 
        <rule name="DynamicContent"> 
         <conditions> 
           <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="True"/> 
         </conditions> 
         <action type="Rewrite" url="index.js"/> 
        </rule> 
       </rules> 
      </rewrite> 

Jede aktualisierung, bitte zögern sie nicht mich wissen zu lassen.

+0

Die obige Lösung stoppt tatsächlich die Ausführung meiner Azure-Bereitstellungs-App. – stevematdavies