我在ubuntu服务器上运行NGINX,并有一个Java应用程序(ZK Sheets)。我正在运行tomcat7,并希望保护特定文件:domain.com:8080/zssapp/#demo.xls
是我要保护的文件。
该网址将我带到电子表格并打开demo.xls
我了解basic_auth
,但该图仅适用于目录。
最佳答案
basic_auth可以在任何位置块中使用。指令Location也可以由文件uri定义。例如
location /zssapp/demo.xls {
basic_auth ....;
}
您的案例将无法使用,因为“#”之后的部分是uri的fragment identifier,并且客户端(例如浏览器)根本不会将此部分发送到服务器。
例如当我们使用curl访问http://localhost:8080/zssapp/#demo.xls
$ curl -v http://localhost:8080/zssapp/#demo.xls
> GET /zssapp/ HTTP/1.1
> User-Agent: curl/7.35.0
> Host: localhost:8080
> Accept: */*
我们只能看到/ zssapp /作为发送到服务器的uri数据。