我已经使用以下命令安装了http-server:
npm i -g http-server
运行服务器时,我得到的响应是Running on 127.0.0.1:8080
我的呼叫看起来像这样:
http-server -a 0.0.0.0 -c-1
如果我去127.0.0.1:8080
或10.1.1.72:8080
我会得到:
This page is not working.
127.0.0.1:8080 sent an invalid response
ERR_INVALID_REDIRECT
我到处搜索和搜索,但实际上没有答案。我不是将XAMPP或IIS用作空白节点服务器。
Node.js: 11.12.0
npm: 6.7.0
OS: Windows 10
我已经检查了主机文件。那里没有相关的东西。我不知道是什么原因造成的。我也不使用.htaccess文件或Web.config文件。
如果您需要更多信息,请告诉我。
注释
如果我转到localhost:8080/index.html
,则可以进入我的应用。虽然这不应该那样工作。
答案 0 :(得分:8)
这仍然是http-server的一个未解决的问题,它可能是由一个称为ecstatic的http-server依赖关系的最新版本引起的。
https://github.com/http-party/http-server/issues/525
目前有三种解决方法:
将浏览器指向localhost:8080 / index.html,而不只是http://localhost:8080。
将您的http服务器版本从10.0降级到0.9
npm卸载-g http-server
npm安装http-server@0.9.0
在http-server模块下打开package.json文件并降级狂喜依赖项
到3.3.1(位于“依赖项”键下)。
答案 1 :(得分:0)
我遇到了完全相同的问题。刚刚全局安装了节点和http服务器。运行http-server
,访问localhost:8080时会出现以下错误:
“ ERR_INVALID_REDIRECT”
如果我尝试访问index.html page
,它可以工作。即使在命令行中使用-d
,它甚至都不会显示目录列表。
不过,我得到了一些东西:安装了较旧版本的http-server
,它会自动加载index.html
:)
这是命令/版本:npm install -g http-server@0.8.5
较新的版本(0.9.0+)会再次崩溃。
编辑:
即使那样,它也仅适用于子文件夹,而不适用于根目录。例如:
http://localhost:8080/mypage/将自动加载index.html。
答案 2 :(得分:0)
我在package.json文件中将http-server版本0.10.0更改为0.8.5,它对我有用。我希望这对某人有帮助。
答案 3 :(得分:0)
尝试将http服务器版本降级为最新版本(0.10.0和0.11.0),这是由于狂喜(3.3.2)引起的问题。
尝试卸载当前的http服务器版本,然后尝试安装0.9.0或更早版本
卸载
npm uninstall -g http-server
安装
npm install http-server@0.9.0
答案 4 :(得分:0)
此问题已在0.12.0版中修复,请确保您已通过运行进行升级
npm install --global http-server
如果您使用npx http-server
,它将自动使用最新版本。
答案 5 :(得分:-1)
在创建服务器时尝试输入URL“ 0.0.0.0”,然后尝试使用。