Обслуживание статических файлов из iisnode с перезаписью URL
Я использую правило перезаписи в моем файле web.config для приложения узла, работающего под issnode, чтобы указать на мой файл server.js. myapp / * указывает на server.js.
<code> <rule name="myapp" enabled="true"> <match url="myapp/*" /> <action type="Rewrite" url="server.js" /> </rule> </code>
Это работало замечательно www.mywebsite.com/myapp/ загрузил бы мое приложение. Я хотел получить перенаправление из корня веб-сайта, чтобы www.mywebsite.com/ запускало мое приложение. Поэтому я изменил свой файл web.config
<code> <rule name="myapp" enabled="true"> <match url="/*" /> <action type="Rewrite" url="server.js" /> </rule> </code>
Так что это запускает server.js и обслуживает мой статический html-файл, единственная проблема - ссылки на любые внешние файлы из моего html-файла (css, js, images и т. Д.). Просто получайте 500 с за каждый запрос. Я использую это для обслуживания статических файлов
<code> var libpath = require('path'); var _path = "."; <-- This seems to be the problem var uri = url.parse(req.url).pathname; var filename = libpath.join(_path, uri); fs.readFile(filename, "binary", function (err, file) { if (err) { res.writeHead(500, { "Content-Type": "text/plain" }); res.write(err + "\n"); res.end(); return; } var type = mime.lookup(filename); res.writeHead(200, { "Content-Type": type }); res.write(file, "binary"); res.end(); }); break; </code>
Поэтому мой вопрос заключается в том, как указать корневой каталог приложения / сервера моего узла для обслуживания статических файлов.
Спасибо
Jono