1

我可以将视频上传到我的 drupal 实例,但是当我尝试查看视频时,我无权这样做。我发现 IIS_IUSR 没有对视频的读取和执行权限,即使 IIS_IUSR 在包含目录上也是如此。

IIS_IUSR 对文件上传到的目录具有读取和执行、列出文件夹内容和读取权限。但是,当我查看上传的视频文件(something.mp4)的权限时,IIS_IUSR 只有列表文件夹/读取数据权限,而 Windows 表示这些权限是从父对象继承的。选中包含来自对象父级的可继承权限选项。

这里有一些可能会有所帮助的更多信息。
如果我尝试通过 url 直接访问视频,则会收到此错误:
HTTP Error 500.50 - URL Rewrite Module Error。
由于发生内部服务器错误,无法显示该页面。

模块RewriteModule
通知BeginRequest
处理程序 StaticFile
错误代码0x80070005

这似乎是某个地方的配置问题,例如 Drupal、IIS 或 Windows。

有什么想法吗。

我的环境:

  • 视窗 2008 R2
  • IIS 7.5
  • Drupal 6.19
  • MySQL 5.1.49
  • PHP 5.2.14

有人要求我发布我的 .htaccess。该网站有几个,但这是视频上传到的文件目录的一个。

SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006
选项 无
选项 +FollowSymLinks

但是 .htaccess 不是仅与 Apache 一起使用吗?我正在使用 IIS,那么 .htaccess 甚至被使用了吗?

4

1 回答 1

0

通过在移动 Web 目录之前更改 Windows 将文件上传到的临时上传目录来使视频正常工作。默认情况下,Windows 使用 C:\Windows\Temp ,在我的情况下,当文件从 Temp 移动到 web 目录时,文件上设置的权限会被保留。我不想在这个文件夹上设置 IIS_IUSR 权限,所以我在 C 驱动器下创建了一个不同的目录,并赋予它 IIS_IUSR 读取/执行权限。然后我更新了我的 php.ini 文件以指向这个新目录。现在一切正常。我认为关键是将这个临时目录放在 Inetpub 之外,因为我尝试了相同的设置,但是在 Inetpub 中使用了临时目录,但它不起作用。

于 2010-11-01T21:12:23.457 回答