我的laravel 4项目是在localhost上创建的。现在我想把它放在服务器上(共享主机),但我遇到了一个错误。首先让我解释一下我是如何上传我的laravel项目的。
mydomain.nl
mydomain.nl--public_html
mydomain.nl--public_html--dev
mydomain.nl--public_html--packages
mydomain.nl--public_html--index.php
mydomain.nl--public_html--.htacces
mydomain.nl--public_html--all other contents form public laravel folders
mydomain.nl--project
mydomain.nl--project--bootstrap
mydomain.nl--project--vendor
mydomain.nl--project--app
mydomain.nl--project--all other folders and files wich were not in laravel public folder
然后我将mydomain.nl/project/bootstrap/paths.php更改为:
'public' => __DIR__.'/../../public_html',
我的mydomain.nl/public_html/index.php到
require __DIR__.'/../project/bootstrap/autoload.php';
$app = require_once __DIR__.'/../project/bootstrap/start.php';
如果我进入我的域名,我会收到以下错误
异常处理程序出错:流或文件" /hostingvariables/project/app/storage/logs/laravel.log"无法打开:fopen(/hostingvariables/project/app/storage/logs/laravel.log)[function.fopen]:无法打开流:/ hostingvariables / project / vendor / monolog / monolog / src / Monolog中的权限被拒绝/Handler/StreamHandler.php:77
我尝试了每一个我能想象的但是我无法解决这个错误,如果有人可以帮我解决这个错误会很好吗?
答案 0 :(得分:1)
错误告诉您没有
的写入权限 /hostingvariables/project/app/storage/logs/laravel.log
它说
许可被拒绝
因此,如果您可以将其修改为775,或者如果它是控制写访问权限的共享解决方案,请联系您的主机
答案 1 :(得分:0)
我最喜欢这种方法。不要更改文件夹权限,而是将Apache设置为以您的身份运行。
在终端类型id
中获取uid=123(Myname)
。
打开/etc/apache2/httpd.conf并对其进行编辑以使用您的用户名。
<IfModule unixd_module>
User Myname
Group staff
</IfModule>
返回终端:sudo apachectl restart