明滅するプログラマの思索

WEBエンジニアとして勤務している一介の男が、日々気づいたことをまとめるブログです

logwatch のファイル出力が実行されない場合の対処

CentOS7 で logwatch を使用し、結果をファイルに出力する場合、手動では以下のコマンドを実行することになります。

logwatch --output file --filename <file name>

CentOS6 までは以下の書き方でした。

logwatch --save <file name>

正直、CentOS6 までのコマンドのほうが簡潔で好きですが、
--output stdout(標準出力)に対応するため、仕方のない変更だったのでしょう。
なお、ファイル出力を crond で実行する場合、
/etc/logwatch/conf/logwatch.confの記述は以下となります。

続きを読む

自作ライブラリをSubversionでバージョン管理し、composer でインストールする

自作のライブラリを composer 経由でインストールできるようにしたい。
ただし社内だけに公開したい。

そういった場合に、VCS(バージョン管理システム)にコミットしたものを composer 経由でインストール(チェックアウト)できます。
今回は、社内で VCS として Subversion を利用している場合の構築についてまとめます。

続きを読む

composer を使おう

composer とは、PHPのライブラリを依存パッケージごと管理するツールです。 これまでにも PHP のライブラリツールとしては PEAR がありましたが、現在では composer でインストール可能なものはこちらで管理する流れが出来上がっています。
今回は今更ですが composer を導入するための手順についてまとめます。

導入環境

ソフトウェア バージョン
CentOS 7.3
PHP 5.6
続きを読む

ストリーミング動画のプレイリストを非同期に切り替える

3つ目の HLS(HTTP Live Streaming)ネタです。
HLSプレイリストをPCで再生する場合、video.js ライブラリを利用すると楽です。

<html>
<head>
<link href="https://vjs.zencdn.net/6.2.7/video-js.css" rel="stylesheet">
<script type="text/javascript" src="./js/jquery-2.1.1.min.js"></script>
</head>
<body>
<div class="movie_content_cap">
  <video id="player" class="video-js vjs-default-skin" height="404" width="720" controls poster="./st_capture.jpg">
  <source id="player_source" src="st.m3u8" type="application/x-mpegURL" />
</video>

<script src="https://vjs.zencdn.net/6.2.7/video.js"></script>
<script src="https://vjs.zencdn.net/ie8/1.1.2/videojs-ie8.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/videojs-contrib-hls/5.10.1/videojs-contrib-hls.js"></script>

<script>
$(function() {
  videojs.options.flash.swf = 'https://unpkg.com/videojs-swf@5.4.0/dist/video-js.swf';
  var player = videojs('player');
  $('#player').on('touchstart mousedown', function(e) {
    e.preventDefault();
    player.play();
  });
});
</script>

jQuery を利用しています。

続きを読む

PHP で Yahoo!ID連携v2 の認証を行う

Yahoo!ID連携は現在 v2 と呼ばれるバージョンで OpenId 認証が可能です。
それまで使用されていた v1 は今年の3月以降、新規の登録が不可能となりました。
Yahoo!ID連携v1 は、PHPSDKが用意されており、実装が楽になっていますが、v2 では Javascript SDK があるのみで、その他の言語の SDK は用意されていません。
ただ、OpenId Connect 準拠となっていることから、サードパーティの認証ロジックをほぼ変更することなく実装が可能となっています。
当記事では Yahoo!ID連携v2 の認証を PHP で実装し、クライアントのメールアドレスを取得するまでの流れをご紹介します。

導入環境

ソフトウェア バージョン
PHP 5.6

PEAR のライブラリ Net_URL および HTTP_Request2 を利用します。

続きを読む

PHPのMediaInfoパッケージを利用してHLS用に動画分割する

HTTP Live Streaming を実装する際、もともとの動画ファイルを分割し、プレイリストファイル(m3u8)を作成する必要があります。

HLS(HTTP Live Streaming) を構築する - 明滅するプログラマの思索

で分割する流れをまとめてありますが、今回はこれをPHPで自動化します。

導入環境

ソフトウェア バージョン
CentOS 6.8
PHP 5.6
続きを読む

Google Cloud Platform の負荷分散に Let's Encrypt のSSL証明書を設定する

Google Cloud Platform(以下 GCP)で利用可能なロードバランサでフロントをSSLにするために Let's Encrypt を利用することができます。
この件については、以下の参照先が大変参考になります。

qiita.com

ここでは、参照先の内容を踏まえて気を付けるべき点と、自動化するための設定をまとめます。

続きを読む