繁体   English   中英

使nginx和node.js具有公共根文件夹

[英]Make nginx and node.js have a common root folder

我已经安装了Ubuntu服务器(16.04),安装了nodejs和nginx,并使它们一个接一个地工作。 端口3000上的nodejs,端口80上的nginx。

现在对我来说唯一的问题是ftp。 我想让nodejs的js文件驻留在nginx www文件夹的子文件夹中,反之亦然。 因此,我可以一次上传所有文件。

我试图在nginx / var / www / html / my_web_project中建立符号链接,导致在nodejs中的文件夹homehome / admin / www / my_web_project。 ..但是我遇到了访问被拒绝的无尽问题。

管理员家庭文件夹已加密,可能会导致问题吗?

无论如何,我都不介意在某个文件夹中放置一个文件夹,nginx和nodejs都希望在该文件夹中找到各自的子文件夹中的文件。

那是个好方法吗,有人可以给我一些建议吗?

Linux的学习曲线很陡峭,但实际上值得一试,因为我终于有了一个可行的解决方案。

从安装nginx开始。 即使您打算在nodejs中进行大多数开发,您也将需要一个正常工作的Web服务器,即nginx。

我浏览了这些指南:

https://serverfault.com/questions/433265/how-do-i-change-the-nginx-user

https://nevyan.blogspot.se/2016/01/install-setup-nginx-php-mysql-and-ftp.html

指南归结为以下命令:

sudo apt-get install nginx
sudo nano /etc/nginx/nginx.conf    
sudo nano /etc/nginx/sites-available/default

编辑nginx.conf,指示nginx与用户“ my_user”一起运行:

user my_user;

编辑默认配置,关键行在这里:

root /home/my_user/ftp/files;

然后重新启动您的nginx服务器。

结果如何? 简单; 我可以通过ftp将文件上传到Web服务器。

  1. 我通过ftp或sftp与“ my_user”连接,由于它是我的用户主文件夹,因此可以覆盖文件。 避免了Linux文件安全性方面的大多数困难。 (我很难掌握所有内容。)
  2. 由于nginx与用户“ my_user”一起运行,因此它也可以访问/ home / my_user / ftp / files文件夹! (我差点疯了,无法执行此步骤)
  3. nginx的根文件夹设置为/ home / my_user / ftp / files,因此当我将新版本的index.html上传到该文件夹​​时,nginx立即使用它。

作品。 :)

nodejs易于安装,看上去“开箱即用”。 我基本上遵循了该指南: https : //kyup.com/tutorials/install-run-node-js-application/

我也想要websocket,这是最简单的部分:

sudo npm install websocket

希望它能对某人有所帮助,我很乐于完成这项工作。 :)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM