一直都对 网站,或者说 nginx, apache 服务,以及 node 搞不清楚。下面说说我自己的理解,不对请大家指正。
比如,一般我们前端开发,最终生成 /发布的,应该都是类似下面这三大类吧
index.html (入口文件,会引用下面的.js )
bundle.js (通常,我们的 typescript 什么的,编译成兼容的 js,全打包压缩成一个 bindle.js )
/public (一个文件夹,用于存放资源文件,什么图片, css, 等等)
开发过程中,webpack-dev-server 会启动一个 node 然后跑一个 express server 。express server 的默认路由 http://localhost:3000/ 就指向我们打包的根目录,比如 <project dir>/dist 。这样,我们打开浏览器,输入默认的地址,就读取&下载 index.html,接着 bindle.js 资源,等等,浏览器会解析运行 js,于是我们最终成功打开“网站”了。
最终发布打包,加上参数比如"production”,就会生成优化后的三大件,放到 dist 目录下。
接着把这个 dist 下面的所有内容,布置到远程服务器机器上。远程的服务器运行的,可能是个 nginx 或者 apache,等等。
我的理解正确么?还是哪里有误解?
至于 node 我现在只知道用 node 除了可以用来运行 /跑 js 外,可以开起一个 express server,用户输入 http(s)://xxx/ 或者 http(s)://xxx/bbb, 就路由到 express server 中绑定的实现代码上去。这个是不是相当于 node 用于服务端开发了?
nginx,我的理解,就是用户输入一个网址+路由,然后 nginx 返回对应(远程)目录下的 index.html 文件。 至于 node 跑的 server, 是不是和 nginx 一样,还是怎么回事儿,楼主就不懂,不太理解了。
大家有没有通俗易懂的解释?
谢谢
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.