我们有一个包含两个图像字段/文件字段字段的内容类型,在将我们的站点迁移到新服务器后,我们遇到了以下问题:
当我们为此内容类型提交一个新项目时,这些字段有两个图像,drupal 给我们以下错误并且不上传图像:
警告:fopen(sites/default/files/.htaccess)[function.fopen]:无法打开流:第 349 行 /websites/sitename/data/sites/all/modules/filefield/field_file.inc 中的权限被拒绝。警告: fopen(sites/default/files/.htaccess) [function.fopen]: 无法打开流: 第 349 行 /websites/sitename/data/sites/all/modules/filefield/field_file.inc 中的权限被拒绝。图片无法创建缩略图。警告:fopen(sites/default/files/.htaccess)[function.fopen]:无法打开流:第 349 行 /websites/sitename/data/sites/all/modules/filefield/field_file.inc 中的权限被拒绝。警告:fopen(sites/default/files/.htaccess)[function.fopen]:无法打开流:/websites/sitename/data/sites/all/modules/filefield/field_file.inc 第 349 行中的权限被拒绝。
我知道这是一个权限错误,但我不清楚我必须在哪里更改权限。file.inc 的第 349 行代码如下:
if (($fp = fopen("$directory/.htaccess", 'w')) && fputs($fp, $htaccess_lines)) {
fclose($fp);
chmod($directory .'/.htaccess', 0664);
}
else {
$repl = array('%directory' => $directory, '!htaccess' => nl2br(check_plain($htaccess_lines)));
form_set_error($form_item, t("Security warning: Couldn't write .htaccess file. Please create a .htaccess file in your %directory directory which contains the following lines:<br /><code>!htaccess</code>", $repl));
*编辑:已解决,问题是由于某种原因drupal 需要在sites/default/files 文件夹中的写权限来创建一个.htaccess 文件。