什么是基于 Linux 的带有 Web 前端的用于上传和下载到用户文件夹的简单文件服务器?

什么是基于 Linux 的带有 Web 前端的用于上传和下载到用户文件夹的简单文件服务器?

我正在运行 Ubuntu 10.4 系统。我可以自由地安装大部分我需要的软件包(仅限免费非商业软件包),并且可以轻松地编写 C++、python、JavaScript 程序/脚本,如果需要,可能还可以使用 PHP 和 Java。

我的目标是允许用户通过网页访问服务器,查看他们可以上传和下载的用户特定目录的文件内容。

这也是一个一次性的原型解决方案,所以我不需要或不想要任何可扩展、灵活、安全甚至可扩展的东西,只需要一些非常简单和快速的东西,可以处理几个用户同时上传和下载,主要警告是上传/下载的文件可能以千兆字节为单位。

我做过的 Web 应用程序开发很少,只做过一些 Linux 开发,我的研究让我了解了 LAMP、python CGIHTTPServer、tomcat,但我怀疑我遗漏了一些简单的东西。

我正在尝试尽量减少为此进行的编程/脚本编写量,因此我希望存在一个可插入的软件包。

答案1

好吧,我最终做了以下事情:

apt-get lighttpd

编辑 lighttpd 配置:

  • 将其指向 /var/www/
  • 已启用 mod_cgi cgi.assign ".py" => ""
  • 已启用 dir-listing.show-header
  • 设置目录列表.排除HEADER.txt

然后我使用 cgitb 和 cgi 添加一个可执行 upload.py 脚本将文件复制到 /var/www/

然后我在 /var/www/ 中创建了一个 HEADER.txt,其中包含指向我的 upload.py 的典型多部分表单上传的 HTML。

我还必须确保相关目录和文件具有适当的权限,并且 py 脚本当然可执行。

这足以让我能够使用 dir-listing 访问并从服务器上的 /var/www 下载文件,以及使用 form+python 将文件上传到服务器上的 /var/www/。

它不是特别安全,但到目前为止它还能发挥作用。

答案2

您可以看看 SME。它基于 CentOS(而不是 Ubuntu),但根据其功能的打包方式,它可能“开箱即用”地满足您的要求。

相关内容