我正在尝试laravel作为PHP框架,我已经将laravel zip提取到~/opt/xampp/htdocs/laravel
但是当我去localhost/laravel
或localhost/laravel
时,我收到403错误消息说:
访问被禁止!
您无权访问请求的对象。它受读保护或服务器无法读取。
我读了一些地方,我需要编辑laravel里面的storage
文件夹,所以它可以读写,所以我chmod -R 766 laravel/storage
但仍然没有运气,我从Ubuntu 12.04这样做有没有人遇到过这个?
编辑
我有chmod -R 0+w laravel/storage
,现在当我去localhost/laravel
我得到一些文件的索引在那里,但当我去localhost/laravel/public/
仍然得到403错误,而不是预期的结果
编辑2
我已经设置了chmod -R 765 laravel/public
,现在当我到达localhost/laravel/public
时,我收到此消息,这让我相信我越来越近了:
警告:require(/opt/lampp/htdocs/learning-laravel/laravel/laravel.php):无法打开流:第34行/opt/lampp/htdocs/learning-laravel/public/index.php中的权限被拒绝
致命错误:require():在/ opt / lampp /中打开所需的'/opt/lampp/htdocs/learning-laravel/laravel/laravel.php'(include_path ='。:/ opt / lampp / lib / php')失败第34行的htdocs / learning-laravel / public / index.php
最后更新
我终于解决了它,发生了什么是laravel
文件夹被读取保护,我必须做的是设置chmod 755 -R laravel
然后chmod -R o+w storage
和瞧,我有laravel启动和运行,感谢所有贡献的人。
为了开始使用laravel,我只需执行以下步骤:
sudo chmod -R 770 /your/path/to/laravel/folder/
然后将www-data组添加到您的laravel
sudo chgrp -R www-data /your/path/to/laravel/folder/
您在正确的轨道上,安装laravel后,您需要确保存储目录具有正确的权限:
sudo chmod o+w storage
然后确保您在apaches文档根目录中提供公共文件夹而不是laravel文件夹
<VirtualHost *:80>
DocumentRoot /Users/JonSnow/Sites/MySite/public
ServerName mysite.dev
</VirtualHost>
这两个要求都是covered here
在Laravel论坛上,Kaspian给出了这个有用的答案:
你必须使用chmod 777,但只能在storage / views文件夹中使用blade,这恰好是默认Laravel视图使用的视图引擎。在开始一个项目之前,我通常在全新安装的Laravel上chmod 777所有存储/ *目录,因为它们必须可以写入视图,会话等。
在.htaccess文件中:
RewriteRule ^index.php(.*)$ /public/index.php [L]
更改存储和引导文件夹的权限,如此
sudo chmod -R 777 ./storage ./bootstrap