如何将node_modules文件夹部署到生产服务器?
问题描述:
我在PHP(LAMP服务器)中制作了一个非常简单的网站(如pastebin)。这个网站使用jquery和bootstrap。我之前使用的是bower
,但我想改为使用npm
代替。如何将node_modules文件夹部署到生产服务器?
我的目录结构是这样的:
- 公共
- HTML
- 的index.php
- node_modules
- jQuery的
- DIST
- 的jquery.js
- 加几十不必要的文件夹
- DIST
- 引导
- 的...
- jQuery的
- HTML
当我使用的凉亭,我用整个bower_components文件夹上传到我的FTP服务器。我的node_modules文件夹非常大,包含数百个文件,因此我不确定是否应该上传它?
我想我可以上传package.json并在上传后在我的web服务器的命令行上运行npm install
,但会将node_modules文件夹暴露给公众构成潜在的安全隐患?
答
你的node_modules
文件夹应该在你的.gitignore
- 如果你使用的是git-。不,你不上传整个文件夹。正如你所说,你运行npm install
。这也适用于凉亭,你不应该上传bower_components
文件夹,你应该在你的服务器上运行命令。
至于问题的其他部分,你不应该公开node_modules
。你所做的是使用一些任务管理器或一些捆绑器(gulp,grunt,webpack)并创建一个捆绑(或concatted)版本的文件(css和js)。一旦你有这个文件,这就是你所暴露的。这就是你包括在你的索引,例如<script src="dist/bundle.min.js"></script>
谢谢..你的回复是非常有帮助的 – supersan