apache认证的问题

我的apache配置了 basic auth.
假定我的ip地址是 111.111.111.111

/var/www/html/remote.html<p>it is a test</p>

curl -u xxxx:xxxx -I http://111.111.111.111/remote...
获得这样的输出

HTTP/1.1 200 OK
Date: Fri, 07 Sep 2018 03:26:06 GMT
Server: Apache/2.4.6 (CentOS)
Access-Control-Allow-Origin: *
Access-Control-Allow-Methods: POST, GET, PUT, DELETE, OPTIONS
Access-Control-Allow-Credentials: true
Access-Control-Allow-Headers: Authorization,DNT,User-Agent,Keep-Alive,Content-Type,accept,origin,X-Requested-With
Last-Modified: Fri, 07 Sep 2018 03:22:41 GMT
ETag: "b2-5753f8537e26c"
Accept-Ranges: bytes
Content-Length: 178
Content-Type: text/html; charset=UTF-8

为何在浏览器中输入http://111.111.111.111/remote...
不能直接显示remote.html
它会调出认证窗口?

https://img3.mukewang.com/5ba8a9860001eca203880159.jpg


拉风的咖菲猫
浏览 622回答 1
1回答

慕的地6264312

因为你没有传密码啊, curl -u参数后的xxx:xxx是用户名和密码. 如果你直接把用户名和密码传过去也可以直接进入页面的.你可以这样在浏览器里输入http://xxx:xxx@111.111.111.111/remote.html这种方式浏览器会把用户名和密码转成 HTTP头: Authorization, 虽然经过变换,但仍算是明文传输,是不安全的, 这也是为啥称其这Basic的原因.
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript