よく使うのに忘れてしまうHTMLタグが紹介されました!
HTMLタグを紹介した記事が、レバテック様のサイトにて紹介されました!
他のブロガー様も紹介されてますが、HTMLが何なのかよくわからない方やタグはなんとなく理解している人でも、HTMLはなんぞやと細かく説明されているものもあるので、参考になるかもしれません。
個人的に「へぇ~」と思った記事は、
[HTML] BRタグは使うな! 私が「改行」を一切使わなくなった1つの理由 | ヨッセンス
でした。
スマホ構築のとき、brタグが原因で、デザインが崩れることをあまり意識してなかったので、勉強になりました(汗
レバテック様のサイトでは、エンジニア関係の求人を取り扱ってるんですね。(はじめて知りました。
エンジニア・デザイナーのためのスキルアップ記事 | レバテックキャリア
↑の記事一覧で、さまざまなプログラムに関する話題がアップされるみたいなので、一読したいと思います^-^
当ブログも引き続き、PHPを中心に更新していきますので、よろしくお願いします!
【CentOS7】Apache2.4のconfファイルの設定について
http://blog.wnotes.net/blog/article/apache-event-mpm
ソースコンパイルからインストールだと、eventになるってことなのかな??
CentOS7でyumでインストールしたものは、preforkだったんだけど。。。
インストールするOSによって設定が違うのかも。。。
Apache2.4からhttpd.confにpreforkの記述がないのと、CentOS7でのyumインストールでは、preforkの設定ファイルがありません。
なので、
「/etc/httpd/conf.d/」の中に「mpm.conf」っていうファイルを新規作成して設定しました。
※ファイル名は「.conf」がついていればなんでもいいと思います。
<IfModule mpm_prefork_module> StartServers 5 MinSpareServers 5 MaxSpareServers 10 ServerLimit 256 MaxRequestWorkers 256 MaxConnectionsPerChild 1000 </IfModule>
※プロセスが多くなればメモリの使用量も増えるためシステムの負荷を見て調整してください。
設定が反映されているかどうかは、プロセスの起動数を見て確認しました。
下記のサイト様に記載されているコマンドでapache(httpd)のプロセスの数がわかります。
ps aux | grep httpd | grep -v "\(root\|grep\)" | wc -l
apacheの設定ファイルを編集した後、反映させるには「reload」ではダメだったので、
service httpd stop service httpd start
にて設定が反映されていることを確認できました。
下記のサイト様の「ServerLimit」の備考で気付きました。(汗
「reload」で「ServerLimit」を256以上にしても反映されなかったので、助かりました。
ServerLimit 256の限界
Apacheのプロセス数が256以上溜まっている状態が続くと、サイト閲覧するタイミングによっては、画面が真っ白まま何も表示されなくなるので、メモリに余裕があればServerLimitを増やすか、ロードバランサーを使い、サーバを分散したほうがいいと思います。
※サーバのスペックによりますが、メモリが少ないサーバは、WEBとDBを切り分けたほうが良さそうです。もちろん、サーバ内に入っているサイトやシステムによります。サーバの増設の前にプログラムで解決できないか増設前にチェックしましょう~。
Apache2.4でのアクセス制限の記事を書きました。
zen6a.hateblo.jp
MySQLが重いときに使うコマンド
SHOW FULL PROCESSLIST
クエリーが改善されないときや重いと思ったときに、上記のコマンドを使うことで
実行中のスレッドを見ることができます。
「Info」にクエリーが表示されるため、その隣に表示される「Time」を見ながら
重いクエリーを判定できると思います。
※FULLをつけないとInfoの方には100文字までしか表示されません。
SHOW GLOBAL VARIABLES
MySQLサーバの設定値を確認できます。
MySQLではないですが、MySQLを使っているページに、アクセスが集中するとプロセスが溜まり重くなります。
プロセス数の確認は下記のコマンドになります。
ps aux | grep httpd | grep -v "\(root\|grep\)" | wc -l
プロセス数がたまっているときに、INSERTすると、エラーになりやすいため、INSERTできなかったときの処理(時間を置いて後でINSERTするなど)が必要になると思います。
【PHP】Carbonで日付の加算減算方法
前回、strtotimeの日付加算減算方法を紹介しましたが、、、
Carbonのほうが、バグを気にせず使えるため、こちらも紹介したいと思います。
そのまえに、Composerが必要になります。前回の記事にて紹介しましたので、よければ参考にしてください。
では、サンプルを公開〜。
<?php // carbonをダウンロードしたパス(前回の記事を参考) require '/home/○○○/bin/vendor/autoload.php'; use Carbon\Carbon; // 今日 echo Carbon::now(); // 昨日 echo Carbon::yesterday(); // 明日 echo Carbon::tomorrow(); // 現時刻のタイムスタンプ echo Carbon::now()->timestamp; // 一週間前 echo Carbon::now()->subWeek(1); // 一週間後 echo Carbon::now()->addWeek(1); // 一ヶ月前 echo Carbon::now()->subMonth(1); // 一ヶ月後 echo Carbon::now()->addMonth(1); // 一年前 echo Carbon::now()->subYear(1); // 一年後 echo Carbon::now()->addYear(1); //月初 echo Carbon::now()->startOfMonth(); // 月末 echo Carbon::now()->endOfMonth(); // 一ヶ月前の月末 echo Carbon::parse('-1 month')->endOfMonth(); // 一ヶ月後の月末 echo Carbon::parse('+1 month')->endOfMonth(); ?>
日付のみ表示したい場合
<?php $carbon = Carbon::now(); echo $carbon->toDateString(); ?>
日付の書式を変更したい場合
<?php $carbon = Carbon::now(); echo $carbon->format('Y年m月d日'); ?>
生年月日から年齢判定
<?php $birthday = Carbon::parse('1990-05-15'); echo $birthday->age; ?>
日付の差分
<?php $date1 = Carbon::createMidnightDate(2018, 1, 1); $date2 = Carbon::createMidnightDate(2018, 12, 31); //秒 echo $date1->diffInSeconds($date2); //分 echo $date1->diffInMinutes($date2); //時間 echo $date1->diffInHours($date2); //日 echo $date1->diffInDays($date2); //週 echo $date1->diffInWeeks($date2); //月 echo $date1->diffInMonths($date2); //年 echo $date1->diffInYears($date2); ?>
エックスサーバーにComposerをインストールする方法
いつもはさくらVPSを使っているのですが、今回新しくエックスサーバーを契約してみました。
Carbon(カーボン)という日付処理が簡単にできるライブラリを使用するには、Composer(コンポーザー)が必要になりましたので、インストール手順を掲載したいと思います。
最初に、エックスサーバーのサーバーパネルにログインして、SSHで操作できるように設定をONにします。
次に、公開鍵認証用鍵ペアの生成ページから、パスフレーズ(お好きなパスワード)を入力して、「公開鍵認証用の鍵ペア生成」ボタンを押します。
※「.key」という拡張子のファイルがダウンロードがされます。
SSHの使い方(Tera Term)
SSHにログインするためには、「Tera Term」というソフトウェアを使います。
※macの場合、付属のターミナルソフトでもログイン可能です。
osdn.jp
そのまま「Tera Term」を開いてもいいですが、SSHを自動ログインすることができるマクロを組み込めるため、下記のサイト様を参考にマクロを作成します。
作成後は、TeraTermをダウンロード時に一緒に付属している、「ttpmacro」から、マクロファイル「.ttl」を開き、ログインできれば完了です。
mac付属のターミナル接続方法
これも調べたら、下記のサイト様から設定手順が記載されてましたので紹介します。
ssh 接続を簡単にする ~/.ssh/config | dogmap.jp
私の場合、「.ssh」のフォルダがなかったため、「mkdir」コマンドでフォルダを作成してから、ssh_configファイルを作成しました。
SSHにログイン後、下記のコマンドを実行します。
※「composer」をインストールする前に、インストール先のフォルダを作ってから、上記のコマンドを実行したほうが、管理しやすいと思います。
// ディレクトリの作成 mkdir carbon //「/carbon」ディレクトリに移動 cd carbon // composerのダウンロード curl -sS https://getcomposer.org/installer | /usr/bin/php5.6
※「/usr/bin/php5.6」はPHPのバージョンによって異なるため、XSERVERのサーバ情報のコマンドパス一覧から確認。
下記のメッセージが表示されていれば、完了です。
「Composer successfully installed to: /home/XXX/composer.phar」
インストールしても何も動かないので追記w
Carbonのインストールまでこの記事に書いていきたいと思います。
まずは、composerをダウンロードしたディレクトリに移動します。
// ディレクトリ移動 cd carbon
Linuxコマンドと同様に、composerと入力するだけで動くように設定します。
// ディレクトリの作成 mkdir ~/bin // composer.pharの移動と名前変更 mv composer.phar ~/bin/composer // 動作テスト composer
下記の文字が表示されれば、正常に動作しています。
最後に下記のコマンドで、carbonをダウンロードします。
※そのままコマンドを実行すると、現在のディレクトリにダウンロードされてしまうため、コマンド実行前にcdで移動します。
cd /bin composer require nesbot/carbon
「vendor」というフォルダがあれば、ダウンロード成功です。
※carbonの使い方を公開しました。