Laravel迁移至新服务器:如何修改账号密码及数据库等配置?
Laravel服务器迁移:数据库连接与配置修改指南
没问题,我帮你理清楚Laravel迁移时修改数据库连接和配置的关键步骤——这是迁移过程里最核心的环节之一,别担心,跟着来就行:
1. 先搞定文件与数据库迁移的基础操作
在调整配置之前,先确保你已经完成了两件事:
- 把原服务器上的整个Laravel项目文件完整复制到新服务器的web目录下
- 用
mysqldump命令(或phpMyAdmin)导出原数据库,再导入到新服务器的数据库中
2. 修改数据库连接的核心:.env文件
Laravel的数据库连接配置优先读取项目根目录下的**.env隐藏文件**(Linux/macOS用ls -a才能看到),这是你要修改的第一个关键文件:
打开.env,找到以下数据库相关配置项,替换成新服务器的数据库信息:
DB_CONNECTION=mysql # 数据库类型,一般保持mysql即可 DB_HOST=127.0.0.1 # 新服务器的数据库主机地址,本地数据库填127.0.0.1 DB_PORT=3306 # 数据库端口,mysql默认3306,除非你改了 DB_DATABASE=your_new_db_name # 新服务器上导入的数据库名称 DB_USERNAME=your_db_username # 新服务器的数据库用户名 DB_PASSWORD=your_db_password # 新服务器的数据库密码
另外,别忘了修改APP_URL为你的新域名:
APP_URL=https://your-new-domain.com
这个配置会影响Laravel生成的所有链接、邮件内容里的跳转地址,必须同步更新。
3. 清除配置缓存,让新配置生效
Laravel为了提升性能会缓存配置文件,修改.env后一定要执行以下命令清除缓存:
在项目根目录下运行终端命令:
php artisan config:clear php artisan cache:clear
这两个命令会清空旧的配置缓存,确保Laravel读取你刚修改的新配置。
4. 其他可能需要调整的配置(按需检查)
如果你的项目有自定义配置,还需要检查config/目录下的相关文件:
config/filesystems.php:如果用了本地存储路径或云存储(比如S3),确认路径/密钥是否适配新服务器config/mail.php:如果项目有邮件发送功能,检查邮件服务器配置是否需要更新
不过这些属于额外配置,核心的数据库连接还是靠.env控制。
5. 权限问题别忽略
新服务器上的Laravel项目需要对特定目录有写入权限,不然会出现报错,执行以下命令调整权限(根据你的web服务器用户调整,比如nginx用www-data,apache可能用apache):
chmod -R 775 storage bootstrap/cache chown -R www-data:www-data storage bootstrap/cache
测试配置是否生效
最后可以简单测试一下:
- 访问新服务器的域名,看网站是否能正常加载
- 在项目根目录运行
php artisan migrate:status,如果能正常列出数据库迁移记录,说明数据库连接配置没问题
内容的提问来源于stack exchange,提问作者Kunal Parekh
相关产品推荐
相关产品推荐

