DFLに権限別の表示、非表示を追記する

表示、非表示だけなら、〇×だけだが、閲覧不可、閲覧可能、編集など、編集権限を加えると、更に変わってきますね。
随机应变 ABCD: Always Be Coding and … : хороший
DFLに権限別の表示、非表示を追記する

表示、非表示だけなら、〇×だけだが、閲覧不可、閲覧可能、編集など、編集権限を加えると、更に変わってきますね。
webサイトのDFLを作る場合は、階層、パスに加えて、title、diescription、H1がディレクトリマップに必ず入りますね。古い人(語弊があってすみません..)が作ると、そこにkeywordが入ります。
keywordなんてseo的に全く意味ないのにな~ とか思いながら、コツコツと重要ワードを拾っていくわけです。
一方で、業務用システム
こちらはtitle、descriptionなどseo要素は全く重視されません。そのため、DFLにtitle、descriptionは入りません。一方、必須は機能要素。う~ん、なるほど。

いずれにしても骨の折れる作業ですな~
ログの設定ファイルは config/logging.php
なるほど、設定ファイル系はconfig配下にありますな。
syslog, slackなどにログ出力ができる。syslogってなんだ?
'channels' => [
'stack' => [
'driver' => 'stack',
'channels' => ['single'],
],
'single' => [
'driver' => 'single',
'path' => storage_path('logs/laravel.log'),
'level' => 'debug',
],
'daily' => [
'driver' => 'daily',
'path' => storage_path('logs/laravel.log'),
'level' => 'debug',
'days' => 7,
],
'slack' => [
'driver' => 'slack',
'url' => env('LOG_SLACK_WEBHOOK_URL'),
'username' => 'Laravel Log',
'emoji' => ':boom:',
'level' => 'critical',
],
'stderr' => [
'driver' => 'monolog',
'handler' => StreamHandler::class,
'with' => [
'stream' => 'php://stderr',
],
],
'syslog' => [
'driver' => 'syslog',
'level' => 'debug',
],
'errorlog' => [
'driver' => 'errorlog',
'level' => 'debug',
],
],
Syslog は、ログメッセージをIPネットワーク上で転送するための標準規格である。” Syslog” という用語は、その通信プロトコルを指すだけでなく、Syslog メッセージを送信するアプリケーションやライブラリに対しても使われる
とりあえず、slackに通知したいですね。あああああああ、全然追いつかねーな。むしろ離されている感が強い。。
/app/Exceptions/Handler.phpを編集する
Handler.phpの最下部
public function render($request, Exception $exception)
{
return parent::render($request, $exception);
}
以下に変える。$e->getStatusCodeで判定する。
view(‘errors.403’)が上手くいかない
public function render($request, Exception $e){
if($this->isHttpException($e)){
if($e->getStatusCode() == 403){
return response()->view('errors.403');
}
if($e->getStatusCode() == 404){
return response()->view('errors.404');
}
return response()->view('errors.500')
}
return parent::render($request, $e);
}
laravel5.2だからか。そりゃそうだ。
public function report(Exception $e)でレポートメールの送信もできるっぽい。。
config/app.php設定ファイルのdebug設定オプションで決定
これか?
'debug' => env('APP_DEBUG', false),
実働環境でこの値をtrueにしてしまうと、アプリケーションのエンドユーザーへ、セキュリティリスクになりえる設定情報を表示する
例えば、falseでcontroller未設定のページのリクエストをすると、

404が表示されます。
trueにします。
あれ、404のままだ。ん?404は404か。
システムエラー時は500のページ
存在しないURLにアクセスされた時は404のページ
無効にすること。廃棄すること。「ユーザーパスワードを忘れてリボークされた」… など。
まず、サーバーを起動します。
[vagrant@localhost laravel]$ php artisan serve –host=192.168.35.10 –port=8000
Laravel development server started:
[Wed Oct 10 22:07:11 2018] 192.168.35.1:56161 [200]: /js/main.js
[Wed Oct 10 22:07:11 2018] 192.168.35.1:56160 [200]: /css/styles.css
[Wed Oct 10 22:07:14 2018] 192.168.35.1:56166 [200]: /favicon.ico
[Wed Oct 10 22:07:17 2018] 192.168.35.1:56168 [200]: /css/styles.css
[Wed Oct 10 22:07:17 2018] 192.168.35.1:56172 [200]: /favicon.ico
[vagrant@localhost laravel]$ php artisan cache:clear
Failed to clear cache. Make sure you have the appropriate permissions.
あれ?
git hub issueに上がってますね。
https://github.com/laravel/framework/issues/25451#issuecomment-424743418
ディレクトリを作成します。

Wow! すげ!
[vagrant@localhost laravel]$ php artisan cache:clear
Application cache cleared!
application以外でも、configuration, route, compiled viewもclearできます。
[vagrant@localhost laravel]$ php artisan config:clear
Configuration cache cleared!
[vagrant@localhost laravel]$ php artisan route:clear
Route cache cleared!
[vagrant@localhost laravel]$ php artisan view:clear
Compiled views cleared!
ドキュメントも読んでおきましょう。
https://readouble.com/laravel/5.6/ja/cache.html
redis, memcacheにも対応しているようです。
Multi-AZ DB インスタンスをプロビジョニングすると、Amazon RDS はプライマリ DB インスタンスを自動的に作成するのと同時に、異なるアベイラビリティーゾーン (AZ) にあるスタンバイインスタンスにデータを複製
インフラストラクチャ障害の場合、Amazon RDS はスタンバイ (Amazon Aurora の場合はリードレプリカ) に自動的にフェイルオーバーするので、フェイルオーバーが完了するとすぐにデータベースの動作を再開できる
なるほど、そういう意味か。
同一リージョン内の独立したロケーション
障害発生時は自動でフェイルオーバーが行われ、1,2分で完了します。つまり、サービスが止まる時間はこのフェイルオーバーが行われている間だけなのでとても短い時間で済む。
create an Amazon ElastiCache Redis node and connect to it from an Amazon EC2 instance
serviceからelasticacheを選ぶ

クラスターエンジン
redis
データベース、キャッシュ、メッセージブローカーとして使用されるインメモリデータ構造ストア
Memcached
動的なウェブアプリケーションの高速化に使用される高パフォーマンスの分散メモリオブジェクトキャッシュシステム。
redisを選択する。
node typeはcache.t2.micro
リプリケーションはnone
ほう

セキュリティグループ
nodeを6379にする

ec2 リモートデスクトップ接続

すげー
まずs3のバケットに画像をuploadして、パブリックのアクセス権を付与します。

できました。

取得した画像を別のドメインから接続します。
<img src="https://s3-ap-northeast-1.amazonaws.com/capital-technology/20181010114846.gif">

OK!
AWSには、ElastiCacheがあるようですね。
elastiCacheとは?
>ElastiCache は、クラウド内の分散型インメモリデータストア環境またはインメモリキャッシュ環境のセットアップ、管理、およびスケーリングが簡単になるウェブサービス
redisみたいなものか?