Cometí el error de actualizar webmatrix 2 que tenía corriendo a la última versión y ahora está roto todo!Webmatrix 2 roto
Desde la pantalla de esto es lo que yo estoy corriendo:
Version 2.0
WebMatrix: 7.1.1674.0
IIS Express: 8.0.8418.0
.NET Framework: 4.0.30319.269 (RTMGDR.030319-2600)
Web Deploy: 7.1.1631.0
SQL Server Compact: 4.0.8854.1
Web Platform Installer: 7.1.1622.0
ASP.NET Web Pages: 2.0.20715.0
Todo estaba funcionando perfecto hasta instalar la nueva versión de WebMatrix 2 en la que ahora estoy consiguiendo este error:
iisnode era incapaz de leer el archivo de configuración. Asegúrese de que la sintaxis del archivo web.config sea correcta. En particular, verifique que la sección de configuración de iNodo coincida con el esquema esperado. El esquema de la sección iNodo que requiere su versión de iisnode se almacena en el archivo% systemroot% \ system32 \ inetsrv \ config \ schema \ iisnode_schema.xml.
¿Qué diablos significa esto ??? ¿esquema?
Aquí está mi archivo web.config No he cambiado nada en él, ¿por qué webmatrix se queja de eso ???
Incluso he intentado ejecutar los ejemplos de plantilla pero también muestran el mismo mensaje. ¿Qué has hecho Microsoft para romper las cosas?
<!-- Don't interfere with requests for logs -->
<rule name="LogFile" patternSyntax="ECMAScript" stopProcessing="true">
<match url="^[a-zA-Z0-9_\-]+\.js\.logs\/\d+\.txt$"/>
</rule>
<!-- Don't interfere with requests for node-inspector debugging -->
<rule name="NodeInspector" patternSyntax="ECMAScript" stopProcessing="true">
<match url="^server.js\/debug[\/]?" />
</rule>
<!-- First we consider whether the incoming URL matches a physical file in the /public folder -->
<rule name="StaticContent">
<action type="Rewrite" url="public{REQUEST_URI}"/>
</rule>
<!-- All other URLs are mapped to the Node.js application entry point -->
<rule name="DynamicContent">
<conditions>
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="True"/>
</conditions>
<action type="Rewrite" url="server.js"/>
</rule>
</rules>
</rewrite>
<!-- You can control how Node is hosted within IIS using the following options -->
<iisnode
node_env="%node_env%"
nodeProcessCommandLine=""%programfiles%\nodejs\node.exe""
nodeProcessCountPerApplication="1"
maxConcurrentRequestsPerProcess="1024"
maxNamedPipeConnectionRetry="3"
namedPipeConnectionRetryDelay="2000"
maxNamedPipeConnectionPoolSize="512"
maxNamedPipePooledConnectionAge="30000"
asyncCompletionThreadCount="0"
initialRequestBufferSize="4096"
maxRequestBufferSize="65536"
watchedFiles="*.js;node_modules\*;routes\*.js;views\*.ejs;middleware\*.js"
uncFileChangesPollingInterval="5000"
gracefulShutdownTimeout="60000"
loggingEnabled="true"
logDirectoryNameSuffix="logs"
debuggingEnabled="true"
debuggerPortRange="5058-6058"
debuggerPathSegment="debug"
maxLogFileSizeInKB="128"
appendToExistingLog="false"
logFileFlushInterval="5000"
devErrorsEnabled="true"
flushResponse="false"
enableXFF="false"
promoteServerVars=""
/>
<!-- <iisnode watchedFiles="*.js;node_modules\*;routes\*.js;views\*.ejs;middleware\*.js"/>-->
<!-- watchedFiles="*.js" -->
</system.webServer>
Esto funcionó para mí. ¡Gracias! – mpen
También tuve que desinstalar iisnode y reinstalar el paquete x64 de https://github.com/tjanczuk/iisnode señalado por Neil arriba. –