Node.js
0
Вклад в тег
http://localhost:3003
и ОК<configuration>
<system.webServer>
...
<rewrite>
<rules>
<clear />
<rule name="images">
<match url="photos/.*" />
<conditions logicalGrouping="MatchAll" trackAllCaptures="false" />
<action type="None" />
</rule>
<rule name="api" stopProcessing="true">
<match url="api\/.*" />
<conditions logicalGrouping="MatchAll" trackAllCaptures="false" />
<action type="Rewrite" url="http://localhost:3004/{R:0}" />
</rule>
<rule name="web" stopProcessing="true">
<match url=".*" />
<conditions logicalGrouping="MatchAll" trackAllCaptures="false" />
<action type="Rewrite" url="http://localhost:3003/{R:0}" />
</rule>
</rules>
</rewrite>
app.use('/', express.static(__dirname)); // не уверен, что это нужно
app.use('/js', express.static(__dirname + '/js')); // у меня express.js обрабатывает статику, мне показалось так проще, чем в iis настраивать, иначе на каждый запрос скрипта, стиля и т.д. iis будет пулять Index.html
app.use('/libs', express.static(__dirname + '/libs'));
app.use('/img', express.static(__dirname + '/img'));
app.use('/css', express.static(__dirname + '/css'));
app.use('/photos', express.static(config.photoPath)); // про фото не уверен, что именно работает - правило в iis или это
//во всех остальных случайх возвращается index.html со всеми js файлами spa приложения
app.all('/*', function (req, resp, next) {
resp.sendfile('index.html', {root: __dirname}); //если при таком подходе, вам в ответ на какие-либо запросы лезет этот index.html, значит либо rewrite в iss не заработал, либо обработка статики в экспрессе с ошибкой сделана.
});
app.use('/api/category', yourCategoryHandler);