权限与文件问题
一、目录权限
Laravel 需要以下目录可写:
chown -R www:www storage
chown -R www:www bootstrap/cache
chmod -R 775 storage bootstrap/cache
检查当前权限:
ls -la storage
如果属主不是 www,就是权限问题。
二、文件权限速查
| 路径 | 权限 | 属主 |
|---|---|---|
| storage/ | 775 | www |
| bootstrap/cache/ | 775 | www |
| public/ | 755 | www |
| .env | 644 | www |
| 其余 | 755 | www |
三、storage:link
上传的图片通过 public/storage 软链接访问:
php artisan storage:link
如果提示 already exists,删掉重建:
rm public/storage
php artisan storage:link
软链接失效会导致所有上传的图片 404。
四、上传大小限制
改 php.ini(宝塔 → PHP 设置 → 配置修改):
upload_max_filesize = 50M
post_max_size = 60M
max_execution_time = 300
memory_limit = 512M
改完重启 PHP。
档案 PDF 可能很大,建议至少 50M。
五、管理员权限
后台 → 系统 → 管理员:
| 角色 | 权限范围 | |---|---| | 超管 | 全部 | | 编辑 | 内容/相册/轮播 | | 财务 | 会费/财务 | | 印章管理员 | 印章/用印审批 |
新管理员:添加 → 设角色 → 分配账号。
六、会员权限
会员只能看自己的数据(会费/档案借阅),不能看别人的。
系统按会员 ID 做数据隔离。
七、常见问题
上传图片 404
php artisan storage:link
chmod -R 775 storage/app/public
后台某菜单看不到
当前账号角色没这个权限。用超管账号看,或给角色加权限。
会员能看别人数据
不应该。如果发生,检查会员相关控制器是否用了 auth('member')->id() 过滤。
修改代码没生效
php artisan config:clear
php artisan view:clear
php artisan route:clear
八、安全建议
APP_DEBUG=false(生产).env不要提交到 gitstorage/目录不要暴露到 web 根- 定期改管理员密码
- 数据库不要用 root 账号
- 关掉不用的模块
下一篇:邮件配置