Laravel 配置多环境env文件(转)
原文:https://learnku.com/articles/56684
1、配置 env 文件夹
删除自带的.env 等文件
添加 env 文件夹
并添加.dev.env, .stage.env, .prod.env 文件
2、修改 app.php
copy//...
//...
//忽略上面代码
$app->singleton(
Illuminate\Contracts\Debug\ExceptionHandler::class,
App\Exceptions\Handler::class
);
/*
|--------------------------------------------------------------------------
| Return The Application
|--------------------------------------------------------------------------
|
| This script returns the application instance. The instance is given to
| the calling script so we can separate the building of the instances
| from the actual running of the application and sending responses.
|
*/
//**********************代码添加到这块*******************************//
/**根据服务器的hostname,加载不同的.env文件
*获取主机名
*这里方式可以根据自己需求修改 可以根据自己域名区分.
*我的这里根据服务器的hostname进行区分
*dev环境hostname:dev-projectname-api-web
*stage环境hostname:stage-projectname-api-web
*prod环境hostname:prod-projectname-api-web
*/
$hostname = gethostname();
//自定义env文件路径
$app->useEnvironmentPath(realpath(__DIR__.'/../env'));
$strProd = 'prod';
$strStage = 'stage';
$strDev = 'dev';
if (strpos($hostname, $strProd) !== false) {
//prod环境
$app->loadEnvironmentFrom('.prod.env');
} elseif (strpos($hostname, $strStage) !== false) {
//stage环境
$app->loadEnvironmentFrom('.stage.env');
} elseif (strpos($hostname, $strDev) !== false) {
//dev环境
$app->loadEnvironmentFrom('.dev.env');
} else {
//其他情况,走dev分支
$app->loadEnvironmentFrom('.dev.env');
}
//**********************代码添加到这块*******************************//
return $app;
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
2020-10-28 最全的SQL练习题(做完你就是高手)