問題タブ [phpdotenv]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
4 に答える
4745 参照

laravel - 特定のサブドメイン用のLaravel 5 Dotenv

私のlaravel 5アプリケーションにはいくつかのサブドメインがあり、各サブドメインにはメール、nocaptchaなどの特定の構成があります.

特定のサブドメインで動作するように .env ファイルを設定する方法

0 投票する
3 に答える
29405 参照

php - dotenv には本番環境で .env ファイルが必要です

PHP用のdotenvを使用して環境設定を管理しています(lavarelではありませんが、lavarelもdotenvを使用しているためタグを付けました)

コードベースから .env を除外し、他のすべての協力者のために .env.example を追加しました

dotenv の github ページ:

phpdotenv は開発環境用に作成されており、通常は本番環境では使用しないでください。本番環境では、要求ごとに .env ファイルをロードするオーバーヘッドがないように、実際の環境変数を設定する必要があります。これは、Vagrant、chef、Puppet などのツールを使用した自動デプロイ プロセスによって実現できます。また、Pagodabox や Heroku などのクラウド ホストを使用して手動で設定することもできます。

私が理解していないのは、次の例外が発生することです。

PHP Fatal error: Uncaught exception 'InvalidArgumentException' with message 'Dotenv: Environment file .env not found or not readable.

これは、「リクエストごとに .env ファイルをロードするオーバーヘッドがないように、実際の環境変数を設定する必要がある」というドキュメントと矛盾しています。

したがって、問題は、dotenv がその例外をスローする理由があるかどうか、および/または何かが足りないかどうかです。まず他のdotenvライブラリ(ruby)と比べて挙動が違う

私はこれを簡単に回避できますが、あまり良い解決策ではありません:

私の意見では最も良い解決策ですが、 dotenv がこれを処理する必要があると思います。

0 投票する
1 に答える
8360 参照

php - Laravel 5.1 で .env を使用して設定されたストレージ パス

ファイルを使用して、Laravel 5.1 でストレージ パスを構成したいと考えてい.envます。私bootstrap/app.phpはこのように見えます:

.env ファイルの関連する行は次のとおりです。

これはうまくいきません。ブートストラップが処理されたに Dotenv ライブラリが初期化されるため、.env変数が で使用できないことがわかりましたbootstrap.php

.envストレージ パスを設定でき、変数を使用できる別の場所はありますか?

0 投票する
1 に答える
1585 参照

amazon-web-services - .env ファイルを使用しないコマンド ライン プロダクションでの Laravel と環境変数

Laravel 5 にアップグレードしたとき、ルートにあるこのファイル内のすべての構成を設定する env システムの使用を開始しました。

.env

このファイルは私のレポの一部ではありません。デプロイするときに、同じ変数をシステム環境変数に設定して (ここでは Amazon Beanstalk を使用) 、.envファイルを必要とせずにアクセスできるようにします。

そのため、すべてが機能しますが、本番環境でスクリプトでコマンドラインを使用すると、これらのシステム環境変数にコマンドラインでアクセスできないようです。ただし、PHP が Web サーバーを介して提供されている場合はアクセス可能です。

この .env ファイルをコピーして追加すると、コマンドラインで機能することがわかりましたが、それが私が混乱している理由です。 php artisan migrate およびその他のコマンドを本番環境で使用できます。

何か不足していますか?コマンドラインで利用可能なシステム環境変数を取得する方法はありますか、または何らかの方法でその .env ファイルを本番環境で動的に作成する必要がありますか?

0 投票する
1 に答える
804 参照

php - Ignore .env file on unit tests

Most of my classes include loading env variables for configuration. When I was coding I thought vlucas/phpdotenv ignored the .env file on testing environments since there is already a conf file like phpunit.xml where you define them.

Is it possible to make dotenv ignore .env when on testing environment?

0 投票する
1 に答える
812 参照

laravel-5 - Lumen アプリケーションの travis-ci で環境変数を読み取る方法

vlucas の Dotenv ライブラリを使用する Lumen アプリケーションがあります。デプロイしようとすると、travis-ci は「.env」ファイルがないと文句を言います。条件付きで Dotenv クラスをロードするには、bootstrap/app.php ファイルを変更する必要がありますか? または、これを処理するためのより良い方法はありますか?

私が得ているエラーメッセージは次のとおりです。

PHP 致命的なエラー: メッセージ「Dotenv: 環境ファイル .env が見つからないか、読み取れません」の例外「InvalidArgumentException」がキャッチされません。/home/travis/build/project/repo/bootstrap/../.env' の /home/travis/build/project/repo/vendor/vlucas/phpdotenv/src/Dotenv.php に環境設定を含むファイルを作成します。 33

0 投票する
10 に答える
33174 参照

php - Laravel 5でphpunitに別の.envファイルを指定するには?

Laravel 5 では通常のことですが、データベース接続の詳細を含むファイルがあり.envます。テスト用にこれらをオーバーライドしたいのですが、これは で実行できますphpunit.xml.envただし、これを行うと、環境構成、特にパスワードをコミットしないという哲学に反するようです。

そのようなものを持って、それから読むよう.env.testingに言うことは可能ですか?phpunit.xml

0 投票する
2 に答える
2000 参照

php - .env (dotenv) ファイルでの PHP 関数の使用

私の場合は.envファイルでPHP関数を使用しようとしていますrand()

これが私が.envで達成しようとしていることです。

ご覧のとおり、CDN サブドメインを表す 1 から 5 までのランダムな整数を生成しようとしてhttp://cdn2.example.comhttp://cdn4.example.comます。

.env での PHP の使用はネイティブでサポートされていないと思いますが、何か方法や回避策はありますか?

PS私はLaravel 5を使用しています。