2016-10-23 13 views
2

私はlaravelのsocialiteパッケージを使用しています。config/services.phpでベースURLを取得するにはどうすればいいですか?LaravelサービスのベースURLを取得

これは、リダイレクトキーをサイトのベースURLを取得することで動的にし、別のドメインに移動するたびに、または展開するたびにこれを変更しないようにするためのサービス構成です。

'facebook' => [ 
    'client_id' => '123456789', 
    'client_secret' => '123456789', 
    'redirect' => 'http://localhost/callback', 
], 

URL::to('/')は、ここでは動作しませんし、私はそれが代わりに.envファイルに毎回値を変更する動的なものでなければならないよう.envファイルに設定を追加する必要はありません。私projctについては

答えて

3

それは.envファイルで設定します。また

'redirect' => env('APP_URL', 'http://localhost') . '/callback' 

、あなたはうん、これは回避することができ

'redirect' => sprintf("%s://%s/callback", 
     isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] != 'off' ? 
     'https' : 'http', 
     $_SERVER['SERVER_NAME'] 
); 
+0

グローバル変数のサーバーを使用することができます。私はネイティブPHPについて忘れてしまった "laravel way"をあまりにも多く考えていました。LOL ..代わりに '$ _SERVER ['HTTP_HOST']'を使用する方が良いでしょうか? – basagabi

+0

私のアプリケーションを 'php artisan serve'で実行しているとき、私はこのPHPの通知を受け取ります:'未定義インデックス:SERVER_NAME'。これはartisan serveコマンドの実行時にのみ存在することに注意してください。 – basagabi

+0

@basagabi: '$ _SERVER ['SERVER_NAME']'を 'isset($ _ SERVER ['SERVER_NAME'])に置き換えてください。 $ _SERVER ['SERVER_NAME']: 'localhost'' –

関連する問題