- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
当使用express.static()来提供静态资源时,我遇到了一个奇怪的问题。具体来说,options
参数的 dotfiles
对象未产生预期的行为。
在明确的文档中指出:
...
express.static
is based on serve-static, and is responsible for serving the static assets...
此外,它还声称向 express.static()
提供 options
参数应该与serve-static 具有相同的效果:
The optional
options
object can have the following properties.
- dotfiles
option
for serving dotfiles. Possible values are "allow", "deny", and "ignore"; defaults to "ignore".
这是serve-static文档中规定的dotfiles
选项应该规定的内容:
'allow' No special treatment for dotfiles.
'deny' Send a 403 for any request for a dotfile.
'ignore' Pretend like the dotfile does not exist and call next().
我能想到的最简洁的例子是下面的代码。看起来,serve-static 提供的资源的行为符合预期,但是 express.static()
在提供相同资源时会忽略这些选项。也就是说,尽管参数 {dotfiles : 'allow'}
被传递给 express.static()
,但所有对资源的请求都以 '.' 开头。返回 404 错误。
此问题发生在 Node 版本 v0.10.25、express 版本 2.5.8、在 ubuntu 服务器 14.04.1 LTS 上运行。
var express = require('express');
var app = module.exports = express.createServer();
var finalhandler = require('finalhandler');
var http = require('http');
var serveStatic = require('serve-static');
app.use('/', express.static('public', {
dotfiles : 'allow'
}));
app.listen(3001);
var serve = serveStatic('public', {
dotfiles : 'allow'
});
var server = http.createServer(function(req, res) {
serve(req, res, finalhandler(req, res))
})
server.listen(3002);
我希望serve-static 和express.static 的行为完全相同。我有什么遗漏的吗?或者这是其他人遇到过的问题吗?
最佳答案
您使用的是 Express 2.5.8
,您正在查看的文档可能适用于 4.x
。 2.5.8
没有 dotfiles
选项,因为它使用不支持它的 connect 1.x
。您的两个选择是:
serve-static
。express
版本。 2.5.8
即将迎来 3 岁生日。关于node.js - NodeJS Express 模块 : 'dotfile' options no working,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28229989/
我只想同步主文件夹中以点开头的文件和文件夹。 更具体地说,我只想同步下列文件和文件夹: ls -ld ~/.[^.]* 我试过的 Unison 命令行: unison /home/username /
由于没有自动化,我将我的点文件存储在 github 中,非常痛苦。我必须自己更新它。 有没有办法可以自动安装/更新/同步点文件?我的意思是在新服务器中,我下载点文件并执行 install将点文件复制到
这个问题是在设计另一个 Git .dotfiles 管理系统时出现的。我想使用 $HOME 作为我的工作树,并将存储库存储在其他地方(不在 .git 下,因为这会混淆其他存储库)。 在具有先前复制和可
我为自己设置了一个点文件存储库,托管在远程服务器上并在不同的机器上使用。对于某些事情,我希望有单独的配置,例如环境变量因机器而异。 我想,如果有一个额外的分支用于依赖于机器的更改会很好,所以例如我有分
我想与社区分享我的配置和脚本,但我不希望我的个人详细信息(例如电子邮件地址)在 World Weird Web 上被抓取和发送垃圾邮件。 怎么做.dotfiles发布者在git push之前从其所有配
当使用express.static()来提供静态资源时,我遇到了一个奇怪的问题。具体来说,options 参数的 dotfiles 对象未产生预期的行为。 在明确的文档中指出: ...express.
删除了 rvm。当我重新安装时,我得到这个: RVM sourcing line not found for Bash, rerun this command with '--auto-dot
我最新的 Rails 项目或多或少是尝试让我打破很多东西并在这个过程中学习。我的 gemfile 中指定了最新版本的 Ruby: ruby '2.2.3' 而且我还有一个 .ruby-version项
我是一名 Emacs/Spacemacs 新用户,我已经了解了基础知识。 但是,我对一种行为感到困惑: 在 dotfile 的 dotspacemacs-additional-packages 下,我
我是一名优秀的程序员,十分优秀!