我设法遵循了Angular Universal:服务器端渲染(https://angular.io/guide/universal)上的Angular.io技术。
我结束了,一切运行正常,没有错误,现在我的dist文件夹被很好地分开了,就像这样:
/dist
/browser
/server
/server.js
npm run serve:ssr效果很好,网站显示效果非常好,最重要的是,我可以在页面源代码中看到编译良好的所有内容。
不幸的是,所有文档似乎都停在那里,因此我的网站位于localhost:4000
。
在渲染之前,我只是将/dist
中的所有内容都上传到了我的Web服务器,并且可以正常工作。
我已经用当前的/dist
设置尝试过此操作,但从Web服务器收到一条禁止消息。我瞄准/server.js
,然后看到源代码。
关于我从这里去哪里的任何线索?很抱歉,这很愚蠢!
答案 0 :(得分:0)
如果文件不能静态提供,您需要设置一个Web服务器来处理请求并将其重定向到nodejs通用服务器。
nginx示例
location / {
index index.html;
try_files $uri @universal;
}
#Transfer to angular universal handler
location @universal{
proxy_pass http://localhost:4000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}