如何在 Linux 中快速地通过 HTTP 提供文件访问服务

转自:https://linux.cn/article-10205-1.html

如今,我有很多方法来通过 Web 浏览器为局域网中的其他系统提供单个文件或整个目录的访问。我在我的 Ubuntu 测试机上测试了这些方法,它们如下面描述的那样运行正常。如果你想知道如何在类 Unix 操作系统中通过 HTTP 轻松快速地提供文件和文件夹的访问服务,以下方法之一肯定会有所帮助。

免责声明:此处给出的所有方法适用于安全的局域网。由于这些方法没有任何安全机制,因此不建议在生产环境中使用它们。你注意了!

方法 1 - 使用 simpleHTTPserver(Python)

我们写了一篇简要的指南来设置一个简单的 http 服务器,以便在以下链接中即时共享文件和目录。如果你有一个安装了 Python 的系统,这个方法非常方便。

  • 如何使用 simpleHTTPserver 设置一个简单的文件服务器

转载者注:

在想要共享的目录下:

python -m http.server 8000

即可。

方法 2 - 使用 Quickserve(Python)

此方法针对 Arch Linux 及其衍生版。有关详细信息,请查看下面的链接。

  • 如何在 Arch Linux 中即时共享文件和文件夹

方法 3 - 使用 Ruby

在此方法中,我们使用 Ruby 在类 Unix 系统中通过 HTTP 提供文件和文件夹访问。按照以下链接中的说明安装 Ruby 和 Rails。

  • 在 CentOS 和 Ubuntu 中安装 Ruby on Rails

安装 Ruby 后,进入要通过网络共享的目录,例如 ostechnix:

$ cd ostechnix

并运行以下命令:

$ ruby -run -ehttpd . -p8000[2018-08-10 16:02:55] INFO WEBrick 1.4.2[2018-08-10 16:02:55] INFO ruby 2.5.1 (2018-03-29) [x86_64-linux][2018-08-10 16:02:55] INFO WEBrick::HTTPServer#start: pid=5859 port=8000

确保在路由器或防火墙中打开端口 8000。如果该端口已被其他一些服务使用,那么请使用不同的端口。

现在你可以使用 URL 从任何远程系统访问此文件夹的内容 - http:// <ip-address>:8000。要停止共享,请按 CTRL+C

方法 4 - 使用 Http-server(NodeJS)

Http-server 是一个用 NodeJS 编写的简单的可用于生产环境的命令行 http 服务器。它不需要配置,可用于通过 Web 浏览器即时共享文件和目录。

按如下所述安装 NodeJS。

  • 如何在 Linux 上安装 NodeJS

安装 NodeJS 后,运行以下命令安装 http-server。

$ npm install -g http-server

现在进入任何目录并通过 HTTP 共享其内容,如下所示。

$ cd ostechnix$ http-server -p 8000Starting up http-server, serving ./Available on: http://127.0.0.1:8000 http://192.168.225.24:8000 http://192.168.225.20:8000Hit CTRL-C to stop the server

现在你可以使用 URL 从任何远程系统访问此文件夹的内容 - http:// <ip-address>:8000。要停止共享,请按 CTRL+C

方法 5 - 使用 Miniserve(Rust)

Miniserve 是另一个命令行程序,它允许你通过 HTTP 快速访问文件。它是一个非常快速、易于使用的跨平台程序,它用 Rust 编程语言编写。与上面的程序/方法不同,它提供身份验证支持,因此你可以为共享设置用户名和密码。

按下面的链接在 Linux 系统中安装 Rust。

  • 在 Linux 上安装 Rust 编程语言

安装 Rust 后,运行以下命令安装 miniserve:

$ cargo install miniserve

或者,你可以在其发布页下载二进制文件并使其可执行。

$ chmod +x miniserve-linux

然后,你可以使用命令运行它(假设 miniserve 二进制文件下载到当前的工作目录中):

$ ./miniserve-linux <path-to-share>

用法

要提供目录访问:

$ miniserve <path-to-directory>

示例:

$ miniserve /home/sk/ostechnix/miniserve v0.2.0Serving path /home/sk/ostechnix at http://[::]:8080, http://localhost:8080Quit by pressing CTRL-C

现在,你可以在本地系统使用 URL – http://localhost:8080 访问共享,或者在远程系统使用 URL – http://<ip-address>:8080 访问。

要提供单个文件访问:

$ miniserve <path-to-file>

示例:

$ miniserve ostechnix/file.txt

带用户名和密码提供文件/文件夹访问:

$ miniserve --auth joe:123 <path-to-share>

绑定到多个接口:

$ miniserve -i 192.168.225.1 -i 10.10.0.1 -i ::1 -- <path-to-share>

如你所见,我只给出了 5 种方法。但是,本指南末尾附带的链接中还提供了几种方法。也去测试一下它们。此外,收藏并时不时重新访问它来检查将来是否有新的方法。

今天就是这些。希望这篇文章有用。还有更多的好东西。敬请期待!

干杯!


via: https://www.ostechnix.com/how-to-quickly-serve-files-and-folders-over-http-in-linux/

作者:SK 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

如何在 Linux 中快速地通过 HTTP 提供文件访问服务相关推荐

  1. linux怎么敲出特殊字符,如何在Linux中快速输入特殊字符

    有时您可能会发现需要输入特殊字符,例如使用强调字母的外文书写时,或使用数学符号进行作业或报告时. 虽然你的键盘有很多键,但许多特殊字符将会丢失.那么如何在文档中键入它们呢? 您可以使用与您的操作系统捆 ...

  2. 如何在Linux中“快速阅读”?

    你听说过"快速阅读"吗?说实话我也没有.直到一个名叫Spritz的新型公司筹集了350万种子基金来开发使用户能够实现每分钟阅读1000个单词的一个API. "快速阅读&q ...

  3. 如何在Linux中安装和使用Silver Searcher(程序员的代码搜索工具)

    Silver Searcher是一个免费的开源跨平台源代码搜索工具,类似于ack ( 类似于程序员的grep工具 ),但速度更快. 它运行在类Unix系统和Windows操作系统上. 银色搜索者和ac ...

  4. linux强制移除pdf密码,分享|如何在 Linux 中从一个 PDF 文件中移除密码

    今天,我碰巧分享一个受密码保护的 PDF 文件给我的一个朋友.我知道这个 PDF 文件的密码,但是我不想透露密码.作为代替,我只想移除密码并发送文件给他.我开始在因特网上查找一些简单的方法来从 PDF ...

  5. Android 驱动(17)---如何在linux中添加新的kernel module

    如何在linux中添加新的kernel module 该SOP针对客户如何添加一个kernel module,并把生成的.ko打包进system.img的过程. 解决方案 L版本(version> ...

  6. linux ios文件是否存在,技术|如何在 Linux 中验证 ISO 镜像

    你从喜爱的 Linux 发行版的官方网站或第三方网站下载了它的 ISO 镜像之后,接下来要做什么呢?是创建可启动介质并开始安装系统吗?并不是,请稍等一下.在开始使用它之前,强烈建议你检查一下你刚下载到 ...

  7. linux 更改ssh端口_如何在Linux中更改SSH端口-简易指南

    linux 更改ssh端口 The default port on SSH is 22. But for security reasons, it's a good idea to change SS ...

  8. linux上无法发送163邮件,如何在linux中发送邮件,使用163邮箱发信。

    linux中,可以使用mail命令往外发送邮件,在使用前,只需要指定如下简单配置即可,这里演示用  163.com    邮箱发送至 qq.com 编辑 /etc/mail.rc,写入下方的参数 se ...

  9. linux mysql 进程查看工具_linux查看正在运行的进程(如何在Linux中查看所有正在运行的进程)...

    如何在Linux中查看所有正在运行的进程 名称:ps 使用权限:所有使用者 使用方式:ps [options] [--help] 说明:显示瞬间行程 (process) 的动态 参数:ps的参数非常多 ...

最新文章

  1. Spring Cloud第十篇:高可用的服务注册中心
  2. 上周热点回顾(5.16-5.22)
  3. 记录x86调试命令总结
  4. 恶意软件盯上了加密货币,两家以色列公司受到攻击
  5. 【框架学习分享】HttpRunner
  6. MIP 技术交流分享(3月15日)
  7. 信息学奥赛C++语言: 回文数个数
  8. ajax请求数据 ztree_ajax 异步获取数据填充到表格显示(ajax) 文档(Options API) DataTables中文网...
  9. 【Python】表格文件处理
  10. php项目电影院售票管理系统,电影院售票管理系统
  11. 教你用命令行扩展VHD的大小
  12. python最适合做什么-python适合做什么开发?
  13. java-成员变量的属性与成员函数的覆盖
  14. MIUI刷第三方rec教程(回退系统)
  15. 20172020图片对比_50张迷人的对比摄影照片作品
  16. 从职高到杭电、浙大、MIT计算机博士!
  17. pwnable.tw-2018-starbound_writeup
  18. iOS 7、iOS 8屏幕适配
  19. win10 java更新失败_win10系统安装不了java的解决方法
  20. 2022.7.11~8.1纪中游记

热门文章

  1. ETL异构数据源Datax_使用querySql_08
  2. ORA-01858: 在要求输入数字处找到非数字字符 13行
  3. 基于Dockerfile创建一个最简单的docker镜像
  4. idea集成Activiti Designer插件
  5. 更改应用程序图标_苹果更新 TestFlight 应用图标,增加更多拟真细节
  6. markdown html vue,vue项目引入markdown
  7. C语言 数组长度计算 - C语言零基础入门教程
  8. jq之$(“tr:odd“).css(“background-color“,“red“);
  9. java欧洲_java欧洲/明斯克时区问题
  10. C语言实现动态顺序表