Car*_*rlo 32 php localhost laravel laravel-4
在阅读了Laravel4测试版的发布后,我第一次尝试Laravel.
我按照这些步骤安装了composer和laravel以及它所需的所有依赖项.我把laravel放在我的~/public_html目录中 - 因为我习惯用Codeigniter 来做,但我觉得这里有些不对劲.
如果我指向浏览器http://localhost/~carlo/laravel-develop/,它只显示目录的内容.
然后,在文件系统上我有一个laravel-develop/public文件夹,它没有出现在浏览器上.
我发现改变了.htaccess这样的:
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
</IfModule>
Run Code Online (Sandbox Code Playgroud)
我尝试访问公用文件夹时导致错误.错误:
ErrorException:警告:file_put_contents(/ home/carlo/public_html/laravel-develop/app/config /../ storage/meta/services.json):无法打开流:/ home/carlo/public_html/laravel-中的权限被拒绝 - develop/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php第77行
另一个:
/home/carlo/public_html/laravel-develop/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php第77行
然后是一长串的错误.最后一个是:
/home/carlo/public_html/laravel-develop/public/index.php第53行中的require_once('/ home/carlo/public_html/laravel-develop/start.php')
soc*_*man 16
您的错误是由于laravel无法写入app/storage文件夹而导致的.其余的只是堆栈跟踪.为了使存储文件夹可写,请cd到您的app文件夹,然后运行:
chmod -R 777 storage
Run Code Online (Sandbox Code Playgroud)
pin*_*ain 11
生产方式,对于不熟悉Unix的人来说比较复杂,但更安全:
web(groupadd web)web(假设您的用户是cool_user,所以运行usermod -a -G web cool_user)web组(例如,在CentOS的php-fpm的使用apache用户名,所以在大多数情况下,这将工作:usermod -a -G web apache)web递归(chgrp -R web /path/to/project/root/)chmod -R g+w /path/to/project/root/apache用户访问所有新创建的(或某些其他)用户文件和文件夹,请通过在项目根目录()上递归设置groupid位,使其接收与其父文件夹相同的组所有权chmod -R g+s /path/to/project/root/.瞧!
快速而肮脏的方式,对于那些不关心安全性并希望让它不惜任何代价而不安全的人:
chmod -R o=rwx /path/to/project/root/小智 5
在我的情况下,我通过在文件/app/config/app.php中修改默认设置来解决此错误:
'url' => 'http://localhost',
Run Code Online (Sandbox Code Playgroud)
到我的本地自定义虚拟主机主机网址:
'url' => 'http://mydomain.local',
Run Code Online (Sandbox Code Playgroud)
这似乎是解决问题的重要变化(我也按照此处的建议chmod了存储文件夹)
希望这有助于你们中的一些人..
小智 2
您需要添加:选项+FollowSymLinks
<IfModule mod_rewrite.c>
RewriteEngine on
Options +FollowSymLinks
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
</IfModule>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
52819 次 |
| 最近记录: |