gpt4 book ai didi

php - 同一台服务器上的 Laravel 4.2 环境

转载 作者:行者123 更新时间:2023-12-03 22:55:31 26 4
gpt4 key购买 nike

我必须将 Laravel 应用程序的多个实例部署到一个唯一的服务器。每个实例都需要不同的数据库配置。基于主机名的默认 Laravel 环境配置对我不起作用,因为所有应用程序都将位于同一台服务器上,因此无法确定要使用哪个配置字段。这是我的 bootstrap/start.php 文件:

$env = $app->detectEnvironment(array(

'development' => array('Ariels-MacBook-Pro.local'),
'server' => array('srv-hostname'),

));

我可以根据域定义环境(因为我的应用程序区域将位于不同的域),这样我可以为每个域定义不同的配置(托管在同一台服务器上)

/p>

有什么想法吗?

最佳答案

Laravel 的 detectEnvironment 方法具有 nify 功能,您可以在其中通过闭包以编程方式确定当前环境。例如,这会将 Laravel 配置为始终使用本地环境。

$env = $app->detectEnvironment(function()
{
return 'local';
});

域名应该在 $_SERVER 中的某处,所以像这样未经测试的伪代码应该可以满足您的需求。

$env = $app->detectEnvironment(function()
{
switch($_SERVER['HTTP_HOST'])
{
case: 'example.com':
return 'production';
case: 'another.example.xom':
return 'production';
default:
return 'local'; //default to local
}
});

关于php - 同一台服务器上的 Laravel 4.2 环境,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26004832/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com