コンテンツにスキップ

Linux

Ubuntu の Nginx で Fancy Index を利用する

以前に以下のメモを書きました。

改めて Ubuntu 環境下の Nginx で Fancy Index を有効化する方法をメモしておきます。 Nginx のバージョンですが、Ubuntu 標準リポジトリのものは Nginx 公式リポジトリ上のものより、ややバージョンが古いです。 Nginx 公式のものを使いたくなる… のですが、モジュールを追加したい場合は Ubuntu 標準リポジトリ上の Nginx を使った方が簡単です。 今回は Fancy Index モジュールを使うことになる為、(Nginx 公式版では無く) Ubuntu 標準リポジトリ上の Nginx を使うことにします。

Ubuntu 24.04LTS の標準リポジトリにある Nginx の差

Ubuntu の標準リポジトリには異なる条件でパッケージングされた、複数の Nginx が存在します。 これらはビルドオプションは同じようですが、搭載されているモジュールが異なるようです。 この差を確認した結果をメモしておきます。

Ubuntu の Nginx で autoindex を使い、ファイル・ディレクトリの一覧を表示する

Nginx で autoindex 機能を使うとディレクトリへアクセスされた際、そのディレクトリ中に存在するファイルやディレクトリの一覧を表示させることが出来ます。 今回は (Ubuntu 標準リポジトリでは無く) Nginx 公式リポジトリから Nginx をインストールし、autoindex を有効化する手順をメモしておきます。

Ubuntu で tshark を対話せずにインストールする

Ubuntu で tshark をインストールする際、Should non-superusers be able to capture packets? のようなメッセージが表示され、Yes or No の対話的入力を求められる場合があります。 これでは「スクリプト中で tshark をインストールしたい」という場合、入力が要求されてスクリプトが止まってしまい不便です。 今回はこの対話的入力無しに tshark をインストールする方法をメモしておきます。

間接的アクセスの送信元アドレスを X-Forwarded-For で記録する

クライアントから LB や CDN、Reverse Proxy などを介さず、直接、サーバへアクセスする場合、サーバのログには「クライアントの送信元 IP アドレス」が記録されます。しかし、クライアントとサーバの間に LB や CDN、Reverse Proxy を介している場合、サーバから見た送信元 IP アドレスは「LB などのアドレス」に見えてしまいます。 これではサーバ側で正確な送信元を把握出来ない為、LB などで X-Forwarded-For というヘッダにオリジナルの送信元 IP アドレスを挿入します。 サーバは X-Forwarded-For が存在する場合、このヘッダを読み取ることで「本来の正確な送信元 IP アドレス」を理解することが出来ます。 今回は Apache のログに X-Forwarded-For を追加して記録する設定方法をメモしておきます。

ripgrep-all を使って CLI で PDF を検索する

以前に Ubuntu に ripgrep をインストールする というメモを書きました。 ripgrep (rg) は [Rust] 製のツールで grep と同じように検索が行えます。 ripgrep がインストールされている前提ですが、rga を使うとテキストファイルだけで無く、様々なファイルを検索出来るようになります。 ripgrep-all の GitHub ページには以下の説明がされています。

rga is a line-oriented search tool that allows you to look for a regex in a multitude of file types. rga wraps the awesome ripgrep and enables it to search in pdf, docx, sqlite, jpg, movie subtitles (mkv, mp4), etc.

ripgrep も ripgrep-all も macOS であれば Homebrew から、Ubuntu であれば Rust Tools apt repo から、いずれにしても簡単にインストールすることが出来ます。 Rust Tools apt repo のインストール方法は Ubuntu に「Rust Tools apt repo」をインストールする にメモしました。 今回は ripgrep-all を使って PDF ファイルを検索する方法をメモしておきます。