Node.js Ubuntu:80端口上的Http服务器正在启动,但可以';无法从浏览器访问?
因此,我通过Node.js Ubuntu:80端口上的Http服务器正在启动,但可以';无法从浏览器访问?,node.js,ubuntu,npm,httpserver,port80,Node.js,Ubuntu,Npm,Httpserver,Port80,因此,我通过npm在http服务器上运行了一个web应用程序。在我的package.json文件中,我有一行“start”:“sudohttp服务器-a[我的ip地址]-p8065-c-1”,当我转到http://myipaddress:8065。但是,如果我将8065改为仅80,在json文件中(这是我想要的),我仍然会收到成功消息: Starting up http-server, serving ./ Available on: http://myipaddress:80 但是当我转到链
npm
在http服务器上运行了一个web应用程序。在我的package.json
文件中,我有一行“start”:“sudohttp服务器-a[我的ip地址]-p8065-c-1”
,当我转到http://myipaddress:8065
。但是,如果我将8065改为仅80,在json文件中(这是我想要的),我仍然会收到成功消息:
Starting up http-server, serving ./
Available on:
http://myipaddress:80
但是当我转到链接时,chrome给了我一个错误的连接。有人知道发生了什么吗?快速测试:
尝试将其作为本地主机地址(localhost或127.0.0.1)访问,以快捷方式设置任何潜在防火墙
尝试在端口80上远程登录到此地址,以查看服务器回复的内容(如果有)。要运行pot小于1000的nodejs应用程序,您需要根访问权限。使用sudo node app.js也别忘了打开防火墙。并确保没有其他人监听端口80。是否安装了Apache?您确定将应用程序服务器放在端口80上不会与Apache冲突吗
在这种情况下,最好将端口80重定向到仅在Apache端口上启动的应用程序服务器。我建议这里有三个可能的问题
端口80已在使用中
您没有以root用户身份运行应用程序(无法绑定到端口这是错误102吗?请检查这一点。可能是您安装的某些扩展造成的。如何telnet端口80上的地址?$telnet 127.0.0.1 80或者基本上运行命令telnet(您不需要以root用户身份执行此操作)第一个参数是您的地址,第二个参数是端口。telnet:无法解析127.0.0.1:80/telnet:名称或服务未知
nvm我有冒号。没有冒号,它连接成功。我连接到端口80,没有问题。我只是无法从浏览器访问它。netstat-lntu | grep:80
尝试此操作后,我得到:tcp 0 myipaddress 0.0.0:*侦听
我尝试了sudohttp服务器-a[我的ip地址]-p 80-c-1
,就像npm start
一样,它说连接可用。但是,当我使用浏览器访问该地址时,它说ERR_connection_拒绝。最后,从json包中删除sudo会在控制台中给我一个EACCESS错误。端口80上已经运行了一些东西,您需要关闭它。可能是错误其他web服务器,如apache。请尝试sudo/etc/init.d/apache2 stop,然后再次尝试运行您的应用程序。抱歉,端口80上唯一运行的是我的应用程序。您是否使用socket.io?不,我没有使用socket.io
netstat -lntu | grep :80
tcp6 0 0 :::80 :::* LISTEN
sudo http-server -a [my ip address] -p 80 -c-1
sudo npm start
"start": "http-server -a [my ip address] -p 8065 -c-1"