爱意满满的作品展示区。
wonpain

Nginx 实现最简单的文件分享,手机观看电脑内视频

  •  1
     
  •   wonpain · May 30, 2018 · 8048 views
    This topic created in 3082 days ago, the information mentioned may be changed or developed.

    通过 nginx 的 autoindex 功能,将 PC 的一个目录挂载到 http://192.168.1.5/ 类似的内网地址,局域网内其他设备可以访问、下载,实现文件共享。Windows 也有类似的功能,只是手机访问不太方便。

    应用场景比较单一:手机观看电脑内的视频。也可以做内网的大文件传输,速度很快,可以跑满内网带宽。小文件还是微信、QQ 发比较方便。

    https://wonpn.com/2018-05-30-nginx-share-files-in-intranet.html

    另外,问一下 win 版 nginx 为啥不行?

    24 replies  •  2019-07-05 09:35:09 +08:00
    lululau
    lululau
    May 30, 2018
    1
    Plex 了解一下,Infuse 了解一下
    lululau
    lululau
    May 30, 2018
    2
    http 文件分享可以用 webfsd,因为每次分享不一定都是在同一个目录,nginx 要改配置比较麻烦

    也不要说 python -m SimpleHTTPServer,这个有 bug,经常连接无响应
    care
    care
    May 30, 2018 via iPhone
    3
    apache 不行吗? 2333
    flynaj
    flynaj
    May 30, 2018 via Android
    4
    Windows 版可以的,目录目录这样写 d://www//
    chintj
    chintj
    May 30, 2018
    5
    chfs?
    300
    300
    May 30, 2018
    6
    windows 可以啊,之前试过
    不过有个问题就是路径中文字符(除非 win10 中改字符集编码为 utf8 )
    Kyaru
    Kyaru
    May 30, 2018 via Android
    7
    我都是用 caddy browse 来干这个的
    huweic
    huweic
    May 30, 2018 via Android
    8
    之前一直后 hexo -s 干这个😂
    huweic
    huweic
    May 30, 2018 via Android
    9
    用
    Ultraman
    Ultraman
    May 30, 2018
    10
    老哥你的 nginx 配置文件最后少了一个}
    wonpain
    wonpain
    OP
    May 30, 2018
    11
    @huweic 是啊,这个简单


    @vcinex 复制的时候漏了😋
    wspsxing
    wspsxing
    May 30, 2018
    12
    我专门写了个 http 工具: [fht2p]( https://github.com/biluohc/fht2p)来干这个,
    工具是 epoll 驱动的,效率还可以。界面如图![snapshot.png]( https://raw.githubusercontent.com/biluohc/fht2p/master/config/assets/snapshot.png)。
    但是还有很多东西没做,比如 https、上传和登录验证等。


    另外看视频其实 smb+es 文件浏览器好很多( windows/Linux 都支持的不错),方便看 mkv 等浏览器不直接支持的文件。
    wspsxing
    wspsxing
    May 30, 2018
    13
    这个 v2 的图片和链接到底怎么个搞法。。
    holala
    holala
    May 30, 2018
    15
    @chust Caddyfile 要怎么写?
    param
    param
    May 31, 2018 via Android
    16
    @holala 不用写
    Kyaru
    Kyaru
    May 31, 2018
    17
    @holala #15 直接在要共享的目录运行 caddy browse 就行了,不用配置文件
    naiba
    naiba
    May 31, 2018 via Android
    18
    没有 php -S 的吗
    la0wei
    la0wei
    May 31, 2018
    19
    @chust 确定?caddy 没有配置文件的话,默认确实是使用 caddy 所在文件位置做默认,但是端口应该不是 80,是 2015,然后,没有 browse 指令的话,caddy 显示的应该是 404,因为没有 index.html
    不过 caddy 确实是方便,nginx 指令不熟悉完全玩不转
    la0wei
    la0wei
    May 31, 2018
    20
    @holala
    IP:8888 {
    root D:\www\
    browse
    }
    改 IP 和端口
    如果 caddy 在需要分享的目录,则 root 那行可以不写,或者另行指定
    Kyaru
    Kyaru
    May 31, 2018 via Android
    21
    @la0wei 改端口的话后边加个-port 8888 就行啦,写 Caddyfile 我嫌有点麻烦。。。
    holala
    holala
    May 31, 2018
    22
    @la0wei 感谢指教
    xk0n
    xk0n
    May 31, 2018❤️1
    23
    nginx 文件名太长会自动省略后面的,而且 windows 下因为编码问题,中文路径会报 500 错误。
    其实用 golang 实现也非常简单,文档中就有现成的

    package main

    import (
    "log"
    "net/http"
    )

    func main() {
    // Simple static webserver:
    log.Fatal( http.ListenAndServe(":8080", http.FileServer( http.Dir("/usr/share/doc"))))
    }

    再交叉编译下 CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build simpleHttpFileServer.go
    完美解决了
    vip1024
    vip1024
    Jul 5, 2019
    24
    caddy
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2190 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 119ms · UTC 14:23 · PVG 22:23 · LAX 06:23 · JFK 09:23
    ♥ Do have faith in what you're doing.