Cómo obtener los archivos angulares.js en IIS 7.5 para la pila angular completa desplegada

--ACTUALIZAR

ahora recibo este error, pero las reescrituras parecen funcionar pero lee archivos js como html o algún tipo de problema

Quiero crear las reglas correctas de reescritura para web.config en IIS 7.5 para la implementación angular de la aplicación de pila completa

Este es mi WEB.CONFIG que estoy usandoéste pero no puedo configurar la ruta virtual

<?xml version="1.0" encoding="utf-8"?>
<configuration>

<system.webServer>
    <handlers>
        <add name="iisnode" path="server.js" verb="*" modules="iisnode"/>
    </handlers>
    <iisnode node_env="PRODUCTION"
     nodeProcessCountPerApplication="1"
     maxConcurrentRequestsPerProcess="1024"
     maxNamedPipeConnectionRetry="100"
     namedPipeConnectionRetryDelay="250"
     maxNamedPipeConnectionPoolSize="512"
     maxNamedPipePooledConnectionAge="30000"
     asyncCompletionThreadCount="0"
     initialRequestBufferSize="4096"
     maxRequestBufferSize="65536"
     uncFileChangesPollingInterval="5000"
     gracefulShutdownTimeout="60000"
     loggingEnabled="true"
     logDirectory="iisnode"
     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"
     watchedFiles="web.config;*.js" />
    <rewrite>
        <rules>
            <!-- Don't interfere with requests for node-inspector debugging -->
            <rule name="NodeInspector" patternSyntax="ECMAScript" stopProcessing="true">
                <match url="^server.js\/debug[\/]?"/>
            </rule>

            <!-- serve static files from /public folder -->
            <rule name="StaticContent">
                <action type="Rewrite" url="public/{R:0}" logRewrittenUrl="true"/>
                <conditions>
                    <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true"/>
                </conditions>
                <match url="public/*"/>
            </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>
            <rule name="SocketIO" patternSyntax="ECMAScript">
                <match url="socket.io.+"/>
                <action type="Rewrite" url="server.js"/>
            </rule>
        </rules>
    </rewrite>
    <!-- <appSettings>
        <add key="virtualDirPath" value="/idetikmssql"/>
    </appSettings> -->

</system.webServer>

ESTE ES MI server.js

              "use strict";

              var express = require('express'),
                    stylus = require('stylus'),
                    logger = require('morgan'),
                    bodyParser = require('body-parser');
              // determind what mode we are
              var env = process.env.NODE_ENV = process.env.NODE_ENV||'developemnt';
              var virtualDirPath = process.env.virtualDirPath || '';
              var app = express();
              //configure the view engine
              function compile(str, path) {
                    return stylus(str).set('filename', path);
              }


              app.set('views', __dirname + '/server/views/');
              app.engine('html', require('ejs').renderFile);
              app.set('view engine', 'html');
              app.use(stylus.middleware(
                    {
                          src: __dirname + 'public',
                          compile: compile
                    }
              ));
              app.use(bodyParser());

              var appPath = app.get('appPath')
              app.use('/bower_components',  express.static(appPath + "/bower_components/"));
              app.use('/app/',              express.static(appPath + "/app/"));
              app.use('/assets',            express.static(appPath + "/assets/"));
              app.use(express.static(__dirname + '/public'));
              app.get('/partials/:partialsPath', function (req, res) {
                    debugger;
                    res.render('partials/' + req.params.partialsPath);
              });

              //the asterisk handles all routes includes javascript, css, html request...
              app.get('*', function (req , res) {
                    res.render('index');
              });
              // app.get(virtualDirPath + '/', function(req, res) {
              //   res.render('index', { virtualDirPath: virtualDirPath });
              // })

              var PORT = 3030;
              app.listen((process.env.PORT!==undefined)?process.env.PORT:PORT);
              console.log('Listening to PORT : ' + process.env.PORT );
              console.log(__dirname);

ESTE ES MI ÍNDICE.HTML

          <!doctype html>
          <!--[if lt IE 7]>      <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
          <!--[if IE 7]>         <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
          <!--[if IE 8]>         <html class="no-js lt-ie9"> <![endif]-->
          <!--[if gt IE 8]><!--> <html class="no-js"> <!--<![endif]-->
            <head>
              <link rel="shortcut icon" href="/favicon.ico" type="image/x-icon"/>
            <!-- <base href="/"> -->
            <title></title>
            <meta name="description" content="">
            <meta name="viewport" content="width=device-width">
            </head>
            <body ng-app="idetikApp">
            <div ng-view=""></div>
            </body>
            <script type="text/javascript" src="app/app.js"></script>
            <script type="text/javascript" src="bower_components/angular/angular.js"></script>
            <script type="text/javascript" src="bower_components/angular-route/angular-route.js"></script>
            <script type="text/javascript" src="bower_components/angular-resource/angular-resource.js"></script>
          </html>

Agrego mi estructura de archivos dentro de IIS

- UNA DE MIS SOLUCIONES

Traté de instalar una aplicación express desde cero y funciona, todo lo que tengo que hacer es cambiar el número de puerto para process.env.PORT y su ejecución, pero la pila completa todavía no puede hacer que funcione, pero todavía necesito ayuda

AQUÍ MI APLICACIÓN FUNCIONA BIEN EN IIS

Respuestas a la pregunta(1)

Su respuesta a la pregunta