我已经创建了一个以Node.js作为后端的Angular项目。
这是服务器文件结构:
Home directory
- httpdocs
- node-hm
- dist
- browser(folder)
- server (folder)
- server.js
- package.json
- web.config
我设法从plesk的Node.js菜单中“ npm install”。
试着:
将应用程序启动文件更改为“ dist / server.js”。
将文档根目录更改为“ node-hm / dist”文件夹。
将dist文件复制到“ node-hm”-仅加载索引,其他文件(如CSS)不会加载
我想念什么?
最佳答案
在这里找到答案:
https://talk.plesk.com/threads/use-nodejs-and-problem-with-express-routing.343510/
需要修改web.config来提供静态文件
<handlers>
<add name="iisnode" path="server.js" verb="*" modules="iisnode" />
</handlers>
<rewrite>
<rules>
<rule name="myapp">
<match url="/*" />
<action type="Rewrite" url="server.js" />
</rule>
<!-- Don't interfere with requests for node-inspector debugging -->
<rule name="NodeInspector" patternSyntax="ECMAScript" stopProcessing="true">
<match url="^server.js\/debug[\/]?" />
</rule>
</rules>
</rewrite>
并在server.js中定义:
app.use(express.static('dist/browser'));