FileServer处理程序是否仅提供您指定的目录中的内容?

时间:2017-07-04 20:02:53

标签: go handler fileserver

例如,用户是否可以将带有linux命令的url放到文件夹/目录中?

我们说我的服务器包括:

bin/
    serverfile.go
    ...
public/
    index.html
    style.css

" www.example.com /../斌/等"

serverfile.go由:

组成
 pacakage main
 import "net/http"

 func main() {
     htttp.ListenAndServe(":8000", http.FileServer(http.Dir("public")))
 }

1 个答案:

答案 0 :(得分:1)

http.FileServer禁止突破您指定的根目录。

相比之下,您可以使用http.ServeFile构建自己的文件服务器,这可能是一项危险的工作。

另见Golang. What to use? http.ServeFile(..) or http.FileServer(..)?