saowu's Blog

几行代码构建文件共享服务器

几行代码构建文件共享服务器
2020-05-22 · 2 min read
Linux Go

懒,是促进社会进步的重要因素......

直接部署

  • 安装 Golang
  • 关闭防火墙
  • go run FileServer.go运行,不要关闭命令行窗口
  • 将本地文件放到 go 文件根目录的 movie 文件夹中即可实现内网共享文件
  • 浏览器访问 http://localhost:9000/saowu/,将localhost替换成本地IP地址

FileServer.go源码

package main

import (
    "log"
    "net/http"
    "os"
)

func main() {

    os.Mkdir("movie", 0777)

    http.Handle("/saowu/", http.StripPrefix("/saowu/", http.FileServer(http.Dir("movie"))))
    err := http.ListenAndServe(":9000", nil)
    if err != nil {
        log.Fatal("ListenAndServe: ", err)
    }

}

编译工具(可选)

  • 安装交叉编译工具gox
go get github.com/mitchellh/gox
  • 编译命令参数
    • os指定要生成的系统名称
    • arch指定CPU的架构
#此时进入项目中的工作目录($GOPATH/src/[你的项目名])
#直接执行gox命令,会生成多达21个不同平台的可执行文件
gox
#单一平台编译
gox -os "windows" -arch amd64
#用斜杠的方式将系统与架构合并批量编译
gox -osarch "windows/amd64 linux/amd64"

Go语言交叉编译工具gox

Copyright © 2020 - 2024 saowu. All Right Reserved
Powered by Gridea