次のトピックについていくつかの助けとアドバイスが必要です。Laravel 5:Apache php http authentication
私のboosはApacheサーバーの設定が単純で、a simple php authの設定もあります。このようなパネルを使用してユーザーが検証されるとすぐに、
彼/彼女は、その背後に実行されているすべてのアプリケーションへのアクセスよりも持っています。つまり、このパネルは「ゲート」として機能し、ゲートを越えてアクセスすることができます(もちろん、Webサーバー上で実行される許可テーブルがあります)。
問題
私はLaravel 5を使用して構築していますアプリケーションは、ゲートの後ろに実行する必要があるので、アプリは、ユーザーが誰であるかを知っておく必要があることを意味します。私は現在ログインusername
を取得することができ$_SERVER['PHP_AUTH_USER'];
を使用
。
しかし、どのような場合、私は私のアプリでuser's
行動を追跡したいですか? $this->user_id
のようなものが必要ですか?
私は彼がusername
をフェッチし、Laravelの背後で実行しているデータベースに保存してユーザーを作成して、ユーザーが 'ゲート'を通過するとすぐに考えていました。
if(isset($_SERVER))
{
if (array_key_exists('PHP_AUTH_USER', $_SERVER)) {
$agent = $_SERVER['PHP_AUTH_USER']; //Request::server('PHP_AUTH_USER')
}
$user = User::create([
'username' => $agent,
]);
}
これは、ユーザーがページを更新するたびにユーザーを作成します。しかし、これを行う最善の方法は何ですか?
は、私は(私は
AppServiceProvider
に上記のコードをテストした)別のプロバイダが必要ですか?username
を保存した後で、$this->user_id
のようにするにはどうすればよいですか?
注:私はLaravelは、箱から出して、基本的な認証を持って知っているが、ユーザが自分のデータベースにはまだありませんので、これは動作しません。私は最初に上記のようにそれらを作成する必要があります。
ページにアクセスできるユーザーはいくつですか?どのオーディエンスにも公開されているのですか?N人の固定ユーザーが使用する内部ページですか? – lesssugar
会社内の@lesssugarユーザーはすべてのアクセス権を持っています(もちろん、ログインに合格した後)。インターネットから公的にアクセスできない(あなたが意味するものなら) – user3641381