标签: fileserver

Node.js快速文件服务器(HTTP上的静态文件)

是否有Node.js随时可用的工具(随附npm),这将有助于我将文件夹内容作为文件服务器通过HTTP公开.

例如,如果我有

D:\Folder\file.zip
D:\Folder\file2.html
D:\Folder\folder\file-in-folder.jpg
Run Code Online (Sandbox Code Playgroud)

然后从D:\Folder\ node node-file-server.js 我开始我可以通过访问文件

http://hostname/file.zip
http://hostname/file2.html
http://hostname/folder/file-in-folder.jpg
Run Code Online (Sandbox Code Playgroud)

为什么我的节点静态文件服务器丢弃请求? 参考一些神秘的

标准node.js静态文件服务器

如果没有这样的工具,我应该使用什么框架?

相关: NodeJS中的基本静态文件服务器

http fileserver node.js

583
推荐指数
16
解决办法
44万
查看次数

适用于Mac的轻量级Localhost文件服务器

是否有一个超轻量级的文件服务器,我可以在我的Mac上用于开发?

我想象的是:

> cd somefolder
> run server
  ...running static file server at http://0.0.0.0:2343...
Run Code Online (Sandbox Code Playgroud)

它仅用于开发静态html/css/js/images - 无需外部连接.

macos terminal fileserver

20
推荐指数
1
解决办法
5976
查看次数

在express/nodejs app中提供存储在S3中的文件

我有应用程序用户的照片是私人的.我将照片(缩略图也)存储在AWS s3中.网站中有一个页面,用户可以在其中查看他的照片(即缩略图).现在我的问题是如何提供这些文件.我评估的一些选项是:

  • 使用签名的URL生成从CloudFront(或AWS)提供文件.但问题是,每次用户刷新页面时,我必须再次创建这么多已签名的URL并加载它.因此,我无法在浏览器中缓存图像本来是一个不错的选择.无论如何仍然在javascript中做?由于安全问题,我不能长时间保持这些网址的有效性.其次,在该时间范围内,如果有人抓住该网址,他可以查看该文件,而无需通过应用程序进行身份验证.
  • 其他选项是在从S3服务器流式传输后从我的快递应用程序本身提供文件.这允许我有http缓存头,因此启用浏览器缓存.它还确保没有人可以在未经过身份验证的情况下查看文件.理想情况下,我想流式传输文件和我使用NGINX代理中继托管另一端流式传输到NGINX.但正如我所见,只有文件存在于同一系统的文件中才能实现.但是在这里我必须流式传输并在我完成流时返回.不想在本地存储文件.

我无法评估这两个选项中哪一个是更好的选择?我想尽可能多地将工作重定向到S3或cloudfront,但即使使用了singed url也会首先向我的服务器发出请求.我也想要缓存功能.

那么理想的做法是什么?有关这些方法的特定问题的答案?

nginx amazon-s3 fileserver node.js express

19
推荐指数
2
解决办法
1万
查看次数

从嵌入式Jetty中的备用路径提供静态文件

我正在尝试创建一个嵌入式jetty服务器,其中包含一个服务于某些动态数据的自定义servlet,以及将为某些图像提供服务的默认servlet.我有自定义servlet工作,但我无法弄清楚如何添加默认servlet来提供图像文件.

这就是我所拥有的......

private void setUpServer(ServerOptions options){
    s = new Server(options.getPort());
    this.options = options;
    context = new ServletContextHandler(ServletContextHandler.SESSIONS);
    context.setContextPath("/");
    s.setHandler(context);
    context.addServlet(new ServletHolder(new DataServlet()), "/data/*");
    context.addServlet(new ServletHolder(new DefaultServlet()), "/pictures/*");
}
Run Code Online (Sandbox Code Playgroud)

我无法弄清楚如何配置DefaultServlet作为文件服务器,仍然有自定义DataServelet仍然工作.

有没有人有任何想法?

java servlets jetty fileserver embedded-jetty

14
推荐指数
1
解决办法
2万
查看次数

使用webclient类将文件上载到文件服务器

目前我有一个应用程序从我的Web应用程序接收上传的文件.我现在需要将该文件传输到恰好位于同一网络上的文件服务器(但事实并非总是如此).

我试图在C#.NET中使用webclient类.

    string filePath = "C:\\test\\564.flv";
    try
    {
        WebClient client = new WebClient();

        NetworkCredential nc = new NetworkCredential(uName, password);

        Uri addy = new Uri("\\\\192.168.1.28\\Files\\test.flv");
        client.Credentials = nc;
        byte[] arrReturn = client.UploadFile(addy, filePath);
        Console.WriteLine(arrReturn.ToString());
    }
    catch (Exception ex)
    {
        Console.WriteLine(ex.Message);
    }
Run Code Online (Sandbox Code Playgroud)

位于192.168.1.28的计算机是文件服务器,共享c:\ Files.截至目前,我收到登录失败的错误用户名或密码错误,但我可以打开资源管理器并输入该路径成功登录.我也可以使用远程桌面登录,所以我知道用户帐户有效.

有关此错误的任何想法?是否可以像这样直接传输文件?使用webclient类或者其他类?

c# webclient file-upload fileserver

11
推荐指数
1
解决办法
10万
查看次数

在特定路由前缀配置OWIN静态文件服务器

我正在尝试将我的内容保存在非默认位置(例如in bower_components/packages/../tools).作为实验的一部分,我正在尝试设置一个asp.net mvc 5应用程序,其中命中某个路径允许我浏览undersorejs包目录中的文件.

我有以下nuget包(除了默认值)

Install-Package underscore.js
Install-Package Microsoft.Owin.StaticFiles
Install-Package Microsoft.Owin.Host.SystemWeb
Run Code Online (Sandbox Code Playgroud)

这就是我在OWIN启动类中所拥有的

 var fileSystem = new PhysicalFileSystem(
                    HttpContext.Current.Server.MapPath("~")+"/../packages/underscore.js.1.6.0"
                  );
 var options = new FileServerOptions {EnableDirectoryBrowsing = true, FileSystem = fileSystem};

 app.MapWhen(ctx => 
      ctx.Request.Uri.AbsolutePath.StartsWith("/__underscore"), 
      ab => ab.UseFileServer(options)
 );
Run Code Online (Sandbox Code Playgroud)

根据我的理解和以前的实验,这非常简单 - 当请求开始时/__underscore 使用简单的静态文件服务器.然而,当我走到/__underscore我得到404错误.

但是,放置断点我可以看到UseFileServer lambda在启动时执行一次,然后再也没有,同时在每个请求上调用谓词lambda(并返回正确的值).

我错过了什么?

asp.net fileserver owin

8
推荐指数
1
解决办法
7895
查看次数

如何使用express js创建一个简单的html服务器

我是node.js的新手我想创建一个简单的express.js静态文件服务器,但我有一些问题.我在全球范围内安装了express.js 4.2,如下所示:

npm install  -g express-generator
Run Code Online (Sandbox Code Playgroud)

我在httpsrv.js中有这个代码:

var http = require('http');
var express = require('express');
var app = express();

app.use('/', express.static(__dirname + '/public'));
app.listen(3000, function() { console.log('listening')});
Run Code Online (Sandbox Code Playgroud)

我不确定是否可以,我想这还不够,但我无法运行它失败了,错误:找不到模块'express'.

我想创建一个简单的http服务器,可以从特定的文件夹("\ public"例如)服务,我使用的是.html语言.我在互联网上找到了很多废话,我不想使用这个.jade的东西,我不想用快递等创建一个空的web应用程序.我想要像Apache一样运行的express.js http服务器首先从指定的文件夹提供静态html页面.任何人都可以帮我这个,建议一篇好文章,一步一步解释,因为我是初学者.

javascript fileserver node.js express

8
推荐指数
2
解决办法
2万
查看次数

图片上传 - CDN,MongoDB还是NFS?

我有一个管理类型系统,用于具有多个Web服务器的网站,用户可以在其中配置页面并上传图像以显示在页面上(类似于CMS).如果您已经有一个具有副本集设置的MongoDB实例,那么存储这些上载的首选方法是什么,以便存在故障转移,为什么?

  1. CDN,例如Amazon S3/CloudFront.
  2. 将图像存储在MongoDB中?我现在这样做,不使用GridFS因为我们的图像都在1MB以下.
  3. 使用某种类型的NFS进行某种故障转移设置.如果是#3,那么如何配置此故障转移?

我现在使用#2就好了,并且在没有故障转移之前使用了#3.如果我使用MongoDB作为我网站的数据存储和服务图像,这些对图像的GET请求是否会影响从数据库中获取非图像数据的性能?

nfs cdn fileserver mongodb

7
推荐指数
2
解决办法
3174
查看次数

Golang:如何使用基本身份验证提供静态文件

我无法使用go-http-auth对http.FileServer进行基本身份验证.

package main

import (
    "fmt"
    "log"
    "net/http"

    "github.com/abbot/go-http-auth"
)

func Secret(user, realm string) string {
    users := map[string]string{
        "john": "$1$dlPL2MqE$oQmn16q49SqdmhenQuNgs1", //hello
    }

    if a, ok := users[user]; ok {
        return a
    }
    return ""
}

func doRoot(w http.ResponseWriter, r *http.Request) {
    fmt.Fprintf(w, "<h1>static file server</h1><p><a href='./static'>folder</p>")
}

func handleFileServer(w http.ResponseWriter, r *http.Request) {
    fs := http.FileServer(http.Dir("static"))
    http.StripPrefix("/static/", fs)
}

func main() {

    authenticator := auth.NewBasicAuthenticator("localhost", Secret)

    // how to secure the FileServer with basic authentication??
    // fs := http.FileServer(http.Dir("static")) …
Run Code Online (Sandbox Code Playgroud)

fileserver go basic-authentication

7
推荐指数
1
解决办法
4248
查看次数

php网站的单独文件服务器

我有两台服务器用于网站.一台服务器将拥有php代码和数据库,另一台服务器将只有较低速度的服 我需要以一种方式实现这些,即通过网站上传的文件必须存储在另一台服务器上,然后才能从那里下载.

谁能建议我实现这一目标的最佳方式.我知道文件可以通过网站上传后通过PHP的FTP功能转移到另一台服务器,但似乎没有正确的方法.

或者两个服务器可以用于静态媒体内容,如仅图像.

谢谢

php apache fileserver

6
推荐指数
2
解决办法
2870
查看次数