部署Laravel+Vite到000Webhost共享主机遇HTTP 500错误求助
Laravel部署到000Webhost解决HTTP 500错误指南
针对你的两个直接问题:
- 关于
php artisan run build:不存在这个命令,如果你使用Vite/Mix管理前端资源,需要在本地运行npm run build编译静态资源,编译后的文件会自动输出到Laravel的public目录(对应你服务器上的public_html目录),之后把编译好的静态资源上传到服务器即可。 - 关于resources目录文件:不需要将
resources/css、resources/js、resources/views移到public目录:resources/views是Laravel的视图模板目录,必须保留在laravel主目录下;resources/css/js是前端源文件,编译后会生成到public目录,源文件无需移动。
排查HTTP 500错误的关键步骤:
1. 检查目录权限
Laravel的storage和bootstrap/cache目录需要web服务器有读写权限:
- 将
laravel/storage和laravel/bootstrap/cache目录权限设置为755(或主机要求的可写权限,部分主机可能需要777); - 确保这两个目录的所有者与web服务器运行用户一致(可通过000Webhost文件管理器修改)。
2. 修正SQLite数据库配置
- 确保
laravel/database/database.sqlite文件存在:如果本地有数据库文件,直接上传到对应目录;如果没有,在本地运行php artisan migrate生成后再上传; - 给
database.sqlite设置可写权限(权限同上); - 修改
.env中的DB_DATABASE为绝对路径,示例:
(可通过000Webhost文件管理器查看文件的绝对路径)DB_DATABASE=/home/你的用户名/laravel/database/database.sqlite
3. 修正.env核心配置
- 将
APP_URL改为000Webhost提供的实际域名,示例:APP_URL=https://你的站点域名.000webhostapp.com - 生产环境必须调整以下配置:
APP_ENV=production APP_DEBUG=false
4. 优化依赖与缓存
在本地运行以下命令后,再将文件上传到服务器:
# 安装生产环境依赖(排除开发依赖) composer install --optimize-autoloader --no-dev # 缓存配置、路由、视图提升性能 php artisan config:cache php artisan route:cache php artisan view:cache
(如果000Webhost支持SSH,也可以直接在服务器上运行这些命令)
5. 查看错误日志
直接查看laravel/storage/logs/laravel.log文件,里面会记录500错误的具体原因(如权限不足、数据库连接失败、依赖缺失等),根据日志信息针对性解决。
内容的提问来源于stack exchange,提问作者munirotul millah
相关产品推荐
相关产品推荐

