Laravel|Inertia|Vue.js-Jetstream在cPanel部署后无法正常认证
排查 Laravel Jetstream + Inertia + Vue cPanel 部署后认证失效问题
1. 会话与Cookie配置检查
- 确认
.env文件核心配置:SESSION_DOMAIN:设置为线上域名(如yourdomain.com,不要带http/https前缀),本地localhost配置不适用线上SESSION_SECURE_COOKIE:启用HTTPS的线上环境需设为trueAPP_URL:填写完整线上URL(如https://yourdomain.com)
- 执行配置缓存刷新命令:
php artisan config:cache php artisan cache:clear
2. cPanel环境权限与目录配置
- 调整会话目录权限:确保
storage/framework/sessions目录权限为755或775,并确认目录所有者与服务器运行用户(如cPanel用户名或nobody)一致 - 验证网站根目录:确认cPanel域名指向设置为
public文件夹,而非项目根目录,否则会话、静态资源加载会异常 - 检查PHP版本:确认服务器PHP版本符合Laravel/Jetstream要求(如Laravel 10需PHP 8.1+),近期PHP版本升级可能导致兼容问题
3. Inertia前端与请求排查
- 重新编译前端资源:本地执行
npm run build后上传public/build目录到cPanel;若cPanel有Node环境,直接在终端执行:npm install && npm run build - 浏览器开发者工具排查:
- 查看Network标签,确认登录请求返回状态码(是否200)
- 检查响应头中是否包含会话Cookie,以及
X-Inertia-Error头是否存在隐藏错误信息
4. Jetstream与服务器日志排查
- 检查Jetstream配置:确认
app/Providers/JetstreamServiceProvider.php中认证守卫、路由配置未被误修改 - 查看服务器日志:
- 查看Laravel日志:
public_html/storage/logs/laravel.log,搜索登录相关的异常(如数据库连接失败、密码哈希验证错误) - 查看cPanel错误日志:在cPanel后台「Metrics > Errors」中查找请求相关的服务器级错误
- 查看Laravel日志:
- 验证数据库连接:执行
php artisan migrate:status,确认线上数据库可正常连接,用户表数据完整
内容的提问来源于stack exchange,提问作者Cleo Tech
相关产品推荐
相关产品推荐

