名为“file”的 Linux 命令仅在通过 web 执行时才返回“application/x-empty”
Posted
技术标签:
【中文标题】名为“file”的 Linux 命令仅在通过 web 执行时才返回“application/x-empty”【英文标题】:Linux command called "file" returns "application/x-empty" only when executing through web 【发布时间】:2011-06-08 09:18:37 【问题描述】:我正在尝试使用调用 perl 脚本的 Ajax 通过 Web 执行命令“file /directory/*”。
当我从服务器运行脚本时,我得到了正确的 mime 类型,但是当我使用触发 ajax 的网络时,我得到“application/x-empty”。
如果我使用“sudo -u apache perl_script.pl”从服务器运行命令 - 结果是正确的。
为什么我从 Ajax 得到不同的响应?
【问题讨论】:
您尝试调用的file
程序是您编写的程序吗?或者您是否尝试调用标准的file
程序?
代码很简单,就是:my $a = `file /direcotry/*`;
不是另一个文件权限问题?
正如我所说的“sudo -u apache perl_script.pl”有效。除非我忘记了一些标志以便它是精确的仿真?
【参考方案1】:
尝试不使用星号,而是使用完整的文件名。
【讨论】:
还是一样,虽然我已经复制了我要检查的文件(a.html,b.html),现在第一个返回“空”,第二个没问题.为什么? 实际上,现在我有 10 个文件,所有文件都带有 mime“空”,只有最后一个文件具有正确的 mime 类型。这是什么东西?以上是关于名为“file”的 Linux 命令仅在通过 web 执行时才返回“application/x-empty”的主要内容,如果未能解决你的问题,请参考以下文章