首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >-> mkdir():拒绝许可

-> mkdir():拒绝许可
EN

Stack Overflow用户
提问于 2018-01-17 14:17:58
回答 1查看 2.1K关注 0票数 5

我已经找了好几个小时了,但即使有类似的问题,也找不到解决的办法。

我正在尝试使用用户php artisan tinker (项目目录demo的所有者)在一个新的laravel安装上运行webmaster,但是我得到了以下错误:

代码语言:javascript
复制
In Configuration.php line 352:
mkdir(): Permission denied

使用详细的标志运行:

异常跟踪: n/a:n/a mkdir() at Illuminate\Foundation\Bootstrap\HandleExceptions->handleError() Psy\ /media/usb/drive1/websites/demo/vendor/psy/psysh/src/Psy/Configuration.php:352 ->getRuntimeDir() at /media/usb/drive1/websites/demo/vendor/psy/psysh/src/Psy/Shell.php:185 Psy\Shell->getDefaultCommands() at /media/usb/drive1/websites/demo/vendor/symfony/ /media/usb/drive1/websites/demo/vendor/symfony/console/Application.php:435 /application.php:1211 Symfony\Component\Console\Application->init() at /media/usb/drive1/websites/demo/vendor/psy/psysh/src/Psy/Shell.php:134 Symfony\Component\Console\Application->add() at /media/usb/drive1/websites/demo/vendor/psy/psysh/src/Psy/Shell.php:134 Psy\Shell->add() at /media/usb/drive1/websites/demo/vendor/symfony/console/Application.php:421Symfony\Component\Console\Application->addCommands() at /media/usb/drive1/websites/demo/vendor/laravel/tinker/src/Console/TinkerCommand.php:54 Laravel\Tinker\Console\TinkerCommand->handle() at n/a:n/a call_user_func_array() at /media/usb/drive1/websites/demo/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:29 Illuminate\Container\BoundMethod::Illuminate\Container{closure}()在/media/usb/drive1/websites/demo/vendor/laravel/framework/src/Illuminate/Container/,BoundMethod.php:87,Illuminate\Container\BoundMethod::callBoundMethod() at /media/usb/drive1/websites/demo/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:31照明\Container\列的方法::call()在/media/usb/drive1/websites/demo/vendor/laravel/framework/src/Illuminate/Container/Container.php:549照明容器\容器-> /media/usb/drive1/websites/demo/vendor/laravel/framework/src/Illuminate/Console/Command.php:183照明处的call\Console\Command-> /media/usb/drive1/websites/demo/vendor/symfony/console/Command/Command.php:252 Symfony\Component\Console\Command\Command->run() at /media/usb/drive1/websites/demo/vendor/laravel/framework/src/Illuminate/Console/Command.php:170照明\控制台\命令->运行()在/media/usb/drive1/websites/demo/vendor/symfony/console/Application.php:938,Symfony\Component\Console\Application->doRunCommand() at /media/usb/drive1/websites/demo/vendor/symfony/console/Application.php:240,Symfony\Component\Console\Application->doRun() at /media/usb/drive1/websites/demo/vendor/symfony/console/Application.php:148,Symfony\Component\Console\Application->run()在/media/usb/drive1/websites/demo/vendor/laravel/framework/src/Illuminate/Console/Application.php:88照明\控制台\应用程序>运行() at /media/usb/drive1/websites/demo/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php:121 Illuminate\Foundation\Console\Kernel->handle() at /media/usb/drive1 1/demo/demo/artisan:37

希望有人能给我个提示。谢谢!

相关信息

  • 分发:Raspbian /Linux8 (jessie)
  • Webserver服务器:Apache2.4.25
  • Laravel版本:5.5 (最新)
  • DocumentRoot/var/www/websites -> /media/usb/drive1/websites/
  • Apache用户www-data (在项目目录中有权限)

类似的报告问题

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-01-10 13:33:06

我问这个问题已经一年了。我只是忽视了“修补程序”的缺乏,继续说下去。但今天,我终于找到了一个解决方案,并认为这可能是一个好主意分享。

共享服务器环境可能导致此错误。将变量$this->runtimeDir从文件vendor/psy/psysh/src/Configuration.php中转储到第352行,将告诉我在/run/user/1000/psysh中创建文件夹所缺少的权限,其中1000是uid。

解决办法是告诉心理学使用一个目录,操作用户可以在其中写入访问权限。这可以通过runtimeDir配置选项来完成。您所需要做的就是在~/.config/psysh/config.php中创建一个配置文件,或者在Laravel的项目根目录中作为.psysh.php本地创建一个配置文件。添加以下内容,您就可以开始了。

代码语言:javascript
复制
<?php
return [
    'runtimeDir' => './.psysh',
];
票数 10
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48303243

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档