如何在没有sudo访问权限的情况下在端口80上运行express app

时间:2017-02-06 21:29:05

标签: node.js apache .htaccess express

我在Dreamhost VPS上使用nodejs的快速框架,我想在端口80上运行我的服务器,但我看到的所有答案都需要sudo / root访问权限,但在Dreamhost VPS上我没有获得此权限。我无法编辑任何Apache文件。我唯一能做的就是创建一个.htaccess文件。我怎样才能做到这一点?

2 个答案:

答案 0 :(得分:1)

您可以尝试在不同的端口上运行Node(大于1024,因为1023或更低版本的端口需要root),只需通过向您的.htaccess文件添加类似的内容来代理请求:

RewriteEngine On
RewriteRule ^/(.*)$ http://127.0.0.1:8080/$1 [P,L]

(在此示例中,Node将在端口8080上运行。)

答案 1 :(得分:0)

对于遇到此问题且拥有Dreamhost的任何人,我提出的解决方案是创建代理。在Dreamhost面板中,有一个为域创建代理的选项,然后您可以指示该域代理到该域的任何端口,我只需将代理转到端口3000,然后我的节点服务器在端口上运行3000

@ Frxstrem的答案也有效,但是当我分享一个链接并且它是一种hacky解决方案时它无法工作。