0

编辑:现在,我已经设法解决了错误 500 错误。现在我收到一个纯粹的 Drupal“未找到文件”,用于文件名中包含阿拉伯字符的私人文件。我检查了 file_managed 表,如果我将任何提到的文件的文件名从阿拉伯语的任何内容更改为英文的任何内容,错误就消失了。有谁知道为什么 Drupal 在处理文件名中包含 unicode(阿拉伯)字符的私有文件时会出现问题?

谢谢!

4

1 回答 1

0

问题可能是您在保存文件时没有设置允许 Web 服务器用户读取它的权限。我将建议一个完全忽略 .httaccess 的解决方案,因为您没有向我们提供该文件的内容。

[顺便说一句,root 用户的 uid 为 0。用户 1 是谁,为什么她会相关?]

  1. 找出“谁”在运行 apache
  2. 确保“谁”可以读取您无法访问的文件

假设你的 web 服务器是 apache,这个命令会告诉你哪个用户正在运行 apache:

 $ ps aux|grep apach[e] 
root     19874  1.0  0.6  84008 12736 ?        Ss   00:24   0:00 /usr/sbin/apache2 -D (...)
apache   19876  0.0  0.4  48576  8380 ?        S    00:24   0:00 /usr/sbin/apache2 -D (...)
(...)

用户 apache 在我的系统上运行二进制 apache2。忽略显示谁启动 apache2 的第一行。现在,使文件可以被 apache 读取。

$ chmod 644 /path/to/whereever/you/put/system/files/docFiles/nameoffile.pdf

现在每个人都可以读取文件并且所有者可以写入它。

于 2012-02-21T23:35:45.643 回答