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

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

Apache

IP制限をかけた VirtualHost に Let's Encrypt の SSL証明書を設定する

Let's Encrypt の SSL証明書を使用するには、サーバ側の DocumentRoot に Let's Encrypt のサーバからのリクエストを許可する必要があります。 Let's Encrypt が証明書を発行する処理の中で、DocumentRoot 直下に.well-knownというディレクトリが作られ、リ…

Apache ユーザに別のユーザとして処理を実行させる

Apacheで立てた Web サーバにリクエストを送り、それをトリガとしてサーバ上で操作を行う場合、その実行ユーザはデフォルトでは apache ユーザとなります。 これだと、そのファイルのユーザ・権限によっては、アクセス権がなく実行に失敗してしまうことが考…

Nginx のリバースプロキシを利用し PHP 処理を Apache で行う

Nginx のシェアが堅調に伸びているようです。 Apache と違い、静的なコンテンツを大量にさばくのに適した Web サーバですが、サーバサイドスクリプトを実行する場合はちょっとしたテクニックが必要となります。 PHP の場合、php-fpm を起動し UNIXドメインソ…

HLS(HTTP Live Streaming) を構築する

HLS とは Apple が開発した動画ストリーミングのためのロジックです。 主にSmartphone向け、iPhone / Android3.0 以上で動作します。PCではデフォルトでは再生できませんが、Javascriptベースの再生可能なプレイヤーは開発されています。 特別なサーバを必要…

Client aborts on SNI unrecognized_name warning の サーバ側での対処

1つの Web サーバで複数の SSL サイトを運用する際、SNI(Server Name Indication)という拡張仕様を利用することが一般的になっています。 名前ベースで SSL のバーチャルホストを管理するということなのですが Apache では2.2.12以降において設定が可能とな…