IIS üzerinde Node.js Dağıtım ve Yayınlama - iisnode
IIS üzerinde Node.js Dağıtım ve Yayınlama - iisnode
Windows Server 2016 x64 ve IIS 10.0 üzerinde test edilmiştir. Farklı sürümler için tüm gereksinimler aynı sadece iisnode için uygun sürüm kurulmalıdır.
Gereksinimler:
- WebPlatformInstaller: WebPlatformInstaller
- IIS URL Rewrite extension: IIS URL Rewrite extension
- Node.js: node.js
- iisnode v0.22.1 x64 : iisnode v0.22.1 x64
Kurulum sonrasında projede “web.config” bulunmalıdır.
Aşağıdaki config örneği Express Framework ile de kullanılabilir. App, server.js ile başlatılacaktır. Konsoldaki çıktılar logDirectory ile belirtilen klasorden kontrol edilebilir. “config” içerisindeki debug kısımları “production” aşamasına geçerken güncellenmelidir.
<configuration>
<system.webServer>
<httpErrors existingResponse="PassThrough" />
<handlers>
<add name="iisnode" path="server.js" verb="*" modules="iisnode" />
</handlers>
<iisnode
node_env="%node_env%"
nodeProcessCountPerApplication="1"
maxConcurrentRequestsPerProcess="1024"
maxNamedPipeConnectionRetry="100"
namedPipeConnectionRetryDelay="250"
maxNamedPipeConnectionPoolSize="512"
maxNamedPipePooledConnectionAge="30000"
asyncCompletionThreadCount="0"
initialRequestBufferSize="4096"
maxRequestBufferSize="65536"
watchedFiles="*.js;iisnode.yml"
uncFileChangesPollingInterval="5000"
gracefulShutdownTimeout="60000"
loggingEnabled="true"
logDirectory="C:\Logs"
debuggingEnabled="true"
debugHeaderEnabled="false"
debuggerPortRange="5058-6058"
debuggerPathSegment="debug"
maxLogFileSizeInKB="128"
maxTotalLogFileSizeInKB="1024"
maxLogFiles="20"
devErrorsEnabled="true"
flushResponse="false"
enableXFF="false"
promoteServerVars=""
configOverrides="iisnode.yml"
/>
<rewrite>
<rules>
<rule name="rulename">
<match url="/*" />
<action type="Rewrite" url="server.js" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
Yorum sağlayıcı Disqus