我的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 OKDate: Fri, 07 Sep 2018 03:26:06 GMTServer: Apache/2.4.6 (CentOS)Access-Control-Allow-Origin: *Access-Control-Allow-Methods: POST, GET, PUT, DELETE, OPTIONSAccess-Control-Allow-Credentials: trueAccess-Control-Allow-Headers: Authorization,DNT,User-Agent,Keep-Alive,Content-Type,accept,origin,X-Requested-WithLast-Modified: Fri, 07 Sep 2018 03:22:41 GMTETag: "b2-5753f8537e26c"Accept-Ranges: bytesContent-Length: 178Content-Type: text/html; charset=UTF-8为何在浏览器中输入http://111.111.111.111/remote...不能直接显示remote.html它会调出认证窗口?
1 回答
慕的地6264312
TA贡献1817条经验 获得超6个赞
因为你没有传密码啊, curl -u参数后的xxx:xxx是用户名和密码. 如果你直接把用户名和密码传过去也可以直接进入页面的.
你可以这样在浏览器里输入
http://xxx:xxx@111.111.111.111/remote.html
这种方式浏览器会把用户名和密码转成 HTTP头: Authorization, 虽然经过变换,但仍算是明文传输,是不安全的, 这也是为啥称其这Basic的原因.
添加回答
举报
0/150
提交
取消