Laravel 我如何强迫工匠为当地环境服务?

Laravel 我如何强迫工匠为当地环境服务?,laravel,laravel-4,Laravel,Laravel 4,我试过了 但它仍然服务于开发站点 php artisan serve --env=local 我知道我可以编辑应用程序配置,但对于我正在进行的项目,我需要经常在这两种模式之间切换,这将是一件痛苦的事情 顺便说一句,我用的是4.2,它有点粗糙,但我是这样工作的 放在工匠的最顶端 并用此替换现有的环境检测逻辑 if(in_array('serve', $argv)) if(in_array('--env=local', $argv)) file_put_contents('

我试过了

但它仍然服务于开发站点

php artisan serve --env=local
我知道我可以编辑应用程序配置,但对于我正在进行的项目,我需要经常在这两种模式之间切换,这将是一件痛苦的事情


顺便说一句,我用的是4.2,它有点粗糙,但我是这样工作的

放在工匠的最顶端

并用此替换现有的环境检测逻辑

if(in_array('serve', $argv))
    if(in_array('--env=local', $argv))
        file_put_contents('.isLocal','');
    else if(file_exists('.isLocal'))
        unlink('.isLocal');

基本上,artisan现在将在设置-env=local选项时创建一个.isLocal文件,并在未设置该选项时将其删除。确保将.isLocal添加到.gitignore

中。您的本地站点和开发站点是否在同一台服务器上?我想我不明白,因为根据你运行artisan的地方,它将使用环境。我在所有情况下都在本地测试。然而,我偶尔会将我的本地站点暴露在网络上,并希望确保我不会意外地透露我的环境变量。
if(in_array('serve', $argv))
    if(in_array('--env=local', $argv))
        file_put_contents('.isLocal','');
    else if(file_exists('.isLocal'))
        unlink('.isLocal');
$env = $app->detectEnvironment(array(
    'local' => file_exists('.isLocal'),
));