2013-10-21 10 views
12

Come si dice a iisnode di eseguire il nostro ambiente applicativo Node.js in produzione/sviluppo/test?Imposta la variabile d'ambiente Node.js (NODE_ENV) in iisnode su Produzione/Sviluppo/Test

Abbiamo ottenuto con successo la nostra app Node.js in esecuzione con iisnode ma process.env.NODE_ENV sta uscendo come "non definito".

Al momento, il nostro file web.config è scritto in questo modo:

<configuration> 
    <system.webServer> 

    <handlers> 
     <add name="iisnode" path="app.js" verb="*" modules="iisnode" /> 
    </handlers> 

    <rewrite> 
     <rules> 
     <rule name="app"> 
      <match url="/*" /> 
      <action type="Rewrite" url="app.js" /> 
     </rule> 
     </rules> 
    </rewrite> 

    <security> 
     <requestFiltering> 
     <hiddenSegments> 
      <add segment="node_modules" /> 
     </hiddenSegments> 
     </requestFiltering> 
    </security>  

    </system.webServer> 
    <appSettings> 
    <add key="NODE_ENV" value="production" /> 
    </appSettings> 
</configuration> 
+1

Non ho ancora avuto il caffè stamattina, ma non si suppone che sia "all'interno della sezione system.webserver ? –

+0

Ciao @JoachimIsaksson, hai ragione! Testato e ha funzionato. –

risposta

13

Joachim si trova proprio sopra che l'aggiunta di <iisnode node_env="production" /> al web.config permette di regolare il valore NODE_ENV. Un altro modo è aggiungere il file iisnode.yml accanto al tuo web.config, e in là spcificare il valore NODE_ENV come node_env: production. Vedere le altre impostazioni che è possibile utilizzare in iisnode.yml a https://github.com/tjanczuk/iisnode/blob/master/src/samples/configuration/iisnode.yml

Problemi correlati