This is a walk through to get generator-angular-fullstack up and running on a windows machine. This walk through has been tested on:
Install Python
C:\Python27
(The Default Path) ** C:\Python27\
) to your Windows PATH
environment variable.Environment Variables
> click "Edit the System Environment Variables" > Envrionment Variables > Click "Path" > "Edit"Install NodeJS on Windows
nvm install 6.4.0
for the version of node that you wantnvm use 6.4.0
to use that versionInstall IISNode
Install IIS URL-Rewrite Module
Install MongoDB on Windows
C:\data\db
.C:\data\db
. You can use a different directory if you prefer by specifying the "--dbpath" parameter when starting the MongoDB server (below).mongod.exe
from the command line. mongod.exe
is likely located in C:\Program Files\MongoDB\Server\[MONGODB VERSION]\bin
; for example for version 3.2 the following command will start MongoDB: C:\Program Files\MongoDB\Server\3.2\bin\mongod
Install the generator
cd c:\example
npm install -g yo gulp-cli generator-angular-fullstack
yo angular-fullstack
The below steps assume you have purchased a domain and have pointed your DNS to your public IP
Build and prep
gulp serve:dist
dist/
folder to your desired directory (This is where IIS will be pointed at)server/
folder into your client/
folder<configuration>
<system.webServer>
<!-- indicates that the socketio.js file is a node.js application
to be handled by the iisnode module -->
<handlers>
<add name="iisnode" path="app.js" verb="*" modules="iisnode" />
<add name="iisnode-socketio" path="config/socketio.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" />
<!-- indicate that all strafic the URL paths beginning with 'socket.io' should be
redirected to the server socketio.js, node.js, application to avoid IIS attempting to
serve that content using other handlers (e.g. static file handlers)
-->
<rewrite>
<rules>
<rule name="LogFile" patternSyntax="ECMAScript">
<match url="socket.io"/>
<action type="Rewrite" url="app.js"/>
</rule>
<rule name="DynamicContent">
<conditions>
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="True"/>
</conditions>
<action type="Rewrite" url="app.js"/>
</rule>
</rules>
</rewrite>
<!-- disable the IIS websocket module to allow node.js to provide its own
WebSocket implementation -->
<webSocket enabled="false" />
</system.webServer>
</configuration>
Setup IIS (if new build in IIS)
client/
folder (C:\example\dist\client\
)