Javascript 在共享主机上部署nodejs文件
在PHP中,我经常将文件放在public_html文件夹中。我对nodejs也做了同样的操作,并使用“永远开始app.js”启动了我的应用程序。路由器按预期工作,但我可以在浏览器中看到我的nodejs源代码,例如显示app.js的源代码Javascript 在共享主机上部署nodejs文件,javascript,node.js,server,shared-hosting,Javascript,Node.js,Server,Shared Hosting,在PHP中,我经常将文件放在public_html文件夹中。我对nodejs也做了同样的操作,并使用“永远开始app.js”启动了我的应用程序。路由器按预期工作,但我可以在浏览器中看到我的nodejs源代码,例如显示app.js的源代码 在一些教程中,他们将文件放在/var/www/html/中并启动应用程序。public_html和/var/www/html之间有什么区别 我正在使用共享主机,因此我没有权限将文件放在/var/www/html/中。我在/home/%username%文件夹中部
请指导我如何在共享主机上安全部署nodejs应用程序。呃,不,Node.js不同,它不是PHP。js中的程序就像C/C++、Python或任何其他通用编程语言一样,它可以控制(很可能)整个服务器,因此不会部署到共享主机上 <>你需要一个便宜的VPS(虚拟专用服务器,云服务器),至少现在非常便宜,与共享主机相当。 对于开始,我建议Heroku,免费服务器: 编程说明: Node.js是服务器端语言,它不像传统的js那样在浏览器中运行,您不会通过URL访问它,除非您使用Express.js或类似的库创建Web服务器 使用Express.js在公共html中服务器静态文件的示例:
- 将您的server.js(或app.js,或任何您放置的内容)放在public_html之外,不要将您的Node.js代码放在那里
- 例如,当您将
放在app.js
的正外部时,可以通过以下方式提供静态文件:public\u html
app.use('/static',express.static('public_html'))
- 在以
开头的URL路径上访问文件,或使用以下中间件在根URL路径上服务器静态文件:/static
app.use('/',express.static('public_html'))
参考资料:你明白了。我认为在public_html上部署nodejs时,express路由器将负责隐藏我的源代码并只提供静态文件,但事实并非如此,它提供public_html中的所有文件。在VPS中,我应该在哪里部署NodeJ?(哪个目录?)为什么在express router中以“/index.html.var”的形式接收“/”或“/index”页面?app.use('/',index)//没有工作app.use('/index.html.var',index)//这个服务的索引页,例如()得到了它。对于索引页,express router获得的是“GET/Index.html.var”,而不是“/”或“/Index”。我使用morgan模块登录,当我导航到主页时,得到了“GET/index.html.var”。有人能帮我修一下吗?