草庐IT

capistrano-env

全部标签

php - 为命令行脚本设置 Zend APPLICATION_ENV

使用ZendFramework设置环境(生产/暂存/开发)的标准做法是在Apache配置(或.htaccess)中使用SetEnv来设置APPLICATION_ENV。这显然适用于Web请求,但是运行命令行脚本(仍然是应用程序的一部分,使用相同的Bootstrap,并依赖于正确的APPLICATION_ENV)呢?有什么最佳做法吗?现在我只是将一个.environment.php文件放到我的cli目录中——如果它存在,它就会被包含(类似于.htaccess我猜测),并且可以用来设置环境。 最佳答案 从终端对于(linux)仅命令行用

php - 如何解决错误 "[ErrorException] file_get_contents(/var/www/laravel/.env): failed to open stream: No such file or directory"?

我在我的机器上使用Ubuntu14.04。我在文档根目录中安装了composer和laravel即/var/www我还授予了-R777文件夹laravel的权限,该文件夹存在于目录/var/www然后我使用cd/var/www/laravel进入目录laravel并运行以下命令phpartisan我看到了那里有所有可用的命令。然后我输入phpartisankey:generate得到了错误[ErrorException]file_get_contents(/var/www/laravel/.env):failedtoopenstream:Nosuchfileordirectory在这里

php - 如何在 Laravel 5 中为 phpunit 指定不同的 .env 文件?

我有一个包含我的数据库连接详细信息的.env文件,这对于Laravel5来说是正常的。我想覆盖这些以进行测试,我可以在phpunit.xml。然而,这样做似乎违背了.env的理念,即不提交环境配置,尤其是密码。是否有可能有类似.env.testing的东西并告诉phpunit.xml从中读取? 最佳答案 您可以覆盖在您的TestCase文件中使用的.env文件,在该文件中启动框架进行测试。更具体:测试/TestCase.php/***Createstheapplication.**@return\Illuminate\Foundat

php - CodeIgniter3 : Why would $_SERVER ['CI_ENV' ] ever be set in the first place?

我看到在他们的默认安装中,他们的index.php有这个:define('ENVIRONMENT',isset($_SERVER['CI_ENV'])?$_SERVER['CI_ENV']:'development');为什么CI_ENV已经设置在$_SERVER数组中? 最佳答案 正如奥利弗所描述的;它是多种环境的特殊用例。在获取代码之前通过.htaccess拆分开发、测试和生产。要配置它:开发(本地主机)SetEnvCI_ENVdevelopment测试(您的本地服务器)SetEnvCI_ENVtesting生产(远程服务器)S

php - 如何为 PHP 设置 env 变量?

我正在使用WAMP。我想在命令提示符下使用php。这个在PATH环境变量中的条目是什么? 最佳答案 您需要将PHP目录添加到您的路径中。在命令行上(例如在批处理文件中),它看起来像这样:SETPATH=%PATH%;C:\your\wamp\path\php如果有疑问,它是包含php.exe的目录。您也可以在Windows的控制面板中预先设置路径。参见here例如,如何在Windows7中执行此操作。请注意,如果您从任意目录调用PHP可执行文件,该目录将是工作目录。您可能需要调整脚本,以便它们使用正确的目录进行文件操作(如果有的话)

php - 从命令行运行 PHP 是否需要 #!/usr/bin/env?

当我看到要从命令行运行的PHP时,通常会在文件顶部有这样一行#!/usr/bin/envphp。..#!/usr/bin/envphp我想知道这是否仅适用于文件在Linux/Unix系统上运行时的情况,还是也需要在Windows上运行? 最佳答案 shebang行是自动检测脚本类型所必需的。它支持这种用法:[pfisher~]$chmod+xrun-me.php[pfisher~]$run-me.php如果将文件名作为参数传递给php解释器,则不需要该行,如下所示:[pfisher~]$phprun-me.php编辑:将"hashb

php - 在 Laravel 5 中设置 ENV 变量的正确方法是什么?

在laravel4中我们有:$env=$app->detectEnvironment(array('local'=>array('homestead')));默认。但是在laravel5中它变成了:$env=$app->detectEnvironment(function(){returngetenv('APP_ENV')?:'production';});此外,他们已经排除了.gitignore中的.env.*行,现在它有:.env并添加了文件.env.example:APP_ENV=localAPP_KEY=SomeRandomStringDB_USERNAME=homestead

php - Laravel 5 - env local debug true 没有显示错误

我正在尝试为我的应用启用调试,但我似乎没有任何反馈。环境设置为本地(在.env文件中),如果我运行phpartisanenv我明白了Currentapplicationenvironment:local我的本​​地环境的调试配置设置为truereturn['debug'=>true,另外,如果我在我的主配置文件(config文件夹中的app.php)中设置debug=true我仍然有反馈说代码中有错误。如果代码有错误,我只有一个空页面(如debug=false)我错过了什么? 最佳答案 我已经通过chmod-R777storage/

php - 如何在 Laravel whoops 输出中隐藏 .env 密码?

如何在Laravel的whoops输出中隐藏我的密码和其他敏感环境变量?有时其他人正在查看我的开发工作。如果抛出异常,我不希望他们看到这些secret,但我也不希望不得不不断地打开和关闭调试,或者为了快速预览而启动一个专用站点。 最佳答案 截至Laravel5.5.13,您可以通过在config/app.php的键debug_blacklist下列出变量来审查变量。当抛出异常时,whoops将用星号*为每个字符屏蔽这些值。例如,给定这个config/app.phpreturn[//...'debug_blacklist'=>['_E

javascript - react 原生 : detect dev or production env

我开发了一个react-native应用程序,应该进行一些API调用。如果我处于生产模式,我的应用应该调用,例如,这个主机:https://example.com/但如果我处于开发模式,它应该在不同的端口上调用我的本地主机,例如:http://192.168.0.10:8080/react-native代码如何感知其环境?.dotenv似乎不适用于react-native。在Chrome调试中,我们可以看到应用程序是使用一些参数启动的:Runningapplication"AppName"withappParams:{"initialProps":{},"rootTag":1}.__D