如何解决为什么 Drupal 不能创建临时文件?
我从我的 drupal 站点克隆了一个存储库到在 Windows 机器上运行 MAMP PRO 的本地环境。所有文件和数据库都设置正确。当我尝试运行 Drupal 8 时,出现此错误。我知道这是一个权限问题,但我不确定在哪里更改权限或做什么。我尝试了很多设置,但得到了相同的结果。
Drupal\Core\File\Exception\FileWriteException: Temporary file 'temporary://filF92B.tmp' could not be created. in Drupal\Core\File\FileSystem->saveData() (line 521 of core\lib\Drupal\Core\File\FileSystem.php).
Drupal\google_tag\Entity\ContainerManager->saveSnippets(Object) (Line: 77)
Drupal\google_tag\Entity\ContainerManager->createAssets(Object) (Line: 160)
Drupal\google_tag\Entity\ContainerManager->getScriptAttachments(Array) (Line: 70)
google_tag_page_attachments(Array) (Line: 297)
Drupal\Core\Render\MainContent\HtmlRenderer->invokePageAttachmentHooks(Array) (Line: 273)
Drupal\Core\Render\MainContent\HtmlRenderer->prepare(Array,Object,Object) (Line: 117)
Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array,Object) (Line: 90)
Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object,'kernel.view',Object)
call_user_func(Array,Object) (Line: 111)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch('kernel.view',Object) (Line: 156)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object,1) (Line: 68)
Symfony\Component\HttpKernel\HttpKernel->handle(Object,1,1) (Line: 57)
Drupal\Core\StackMiddleware\Session->handle(Object,1) (Line: 47)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object,1) (Line: 106)
Drupal\page_cache\StackMiddleware\PageCache->pass(Object,1) (Line: 85)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object,1) (Line: 47)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object,1) (Line: 52)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object,1) (Line: 23)
Stack\StackedHttpKernel->handle(Object,1) (Line: 708)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
解决方法
转到管理员 -> 配置 -> 媒体 -> 文件系统 (/admin/config/media/file-system
) 以获取您的临时路径。确保它对 Apache 用户具有正确的权限。
好的,看起来不需要访问管理面板来更改临时目录。在 settings.php 中,我可以修改下面的行来进行设置。清除 Drupal 缓存并添加 .htaccess 文件后,它就可以工作了。
$settings['file_temp_path'] = '/tmp';
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。