zoukankan      html  css  js  c++  java
  • http 静态文件

    什么是静态文件?如何处理静态文件?静态文件的作用

    类型于单独的css  js  图片这些被html文件所需要,而又不会有太大隐私的文件。静态文件用来修饰html等模板。如何只暴露所需要的静态文件?请看下面详解:

    先看一下例子:

    package main
    
    import (
    	"net/http"
    )
    func main(){
    	http.Handle("/",http.FileServer(http.Dir("/")))
    	http.ListenAndServe(":80",nil)
    }
    

      访问结果:

    访问了整个磁盘上的文件,

    修改一下,接着看:

    package main
    
    import (
    	"net/http"
    )
    func main(){
    	http.Handle("/",http.FileServer(http.Dir("./")))  //当前根目录
    	http.ListenAndServe(":80",nil)
    }
    

      访问结果:

    当前目录下的所有文件。

    上面的情况,放开的权限特别大,这肯定是不行的,主要是不安全的。

    看下面的完整的例子:

    package main
    
    import (
    	"net/http"
    	"text/template"
    	"fmt"
    )
    var t1 *template.Template
    func init(){
    	t,err := template.ParseFiles("./views/index.html")
    	if err != nil {
    		fmt.Println("paser file err",err)
    		return
    	}
    	t1 = t
    }
    func index(w http.ResponseWriter, r *http.Request){
    	t1.Execute(w,nil)
    }
    func main(){
    	http.HandleFunc("/index",index)
    	http.Handle("/media/",http.StripPrefix("/media/",http.FileServer(http.Dir("./media"))))
    	// http.Handle("/media/",http.FileServer(http.Dir("./media")))
    	http.ListenAndServe(":80",nil)
    }
    

      

    当前目录 static, views下是所有的html模板,media下是所有css,js,图片。

    访问url:

    查看页面所需要css的url:

    静态文件其实指的是像css,js,img等一些被模板需要的文件,当它们访问的url不能获取时,那么模板就不能达到预想的效果。所以我们只暴露了所需要的静态文件的目录

    查看:

  • 相关阅读:
    C# 直接选择排序(史上最清晰,最通俗)
    Hadoop单节点伪分布式环境部署
    Hive安装和部署andMySQL安装和部署
    Kafka集群部署
    HA Hadoop完全分布式环境部署
    HBase集群部署
    Flume整合Kafka
    Hadoop完全分布式环境部署
    JavaScript正则表达式语法
    什么无线路由器性价高?买什么路由器好?
  • 原文地址:https://www.cnblogs.com/wanghaijun999/p/8483987.html
Copyright © 2011-2022 走看看