apache(httpd) を使って REST API を実現するためには

apache の mod_rewrite を使って、REST API (Web API) を実現する為の設定方法です。ググっても中々出てこなかったのでメモっておきます。

/etc/httpd/conf.d/mod_rewrite.conf

RewriteEngine On
RewriteCond %{REQUEST_URI} ^/api/([^/]+)/([^/]+)/([^/]+) [OR]
RewriteCond %{REQUEST_URI} ^/api/([^/]+)/([^/]+) [OR]
RewriteCond %{REQUEST_URI} ^/api/([^/]+)
RewriteRule /api/(.*) /api/index.php?para0=%1&para1=%2&para2=%3

/var/www/html/api/index.php

<?php

	$para0 = '';
	$para1 = '';
	$para2 = '';

	if( ! empty( $_GET["para0"] ) ) {
		$para0 = urldecode( $_GET["para0"] );
	}

	if( ! empty( $_GET["para1"] ) ) {
		$para1 = urldecode( $_GET["para1"] );
	}

	if( ! empty( $_GET["para2"] ) ) {
		$para2 = urldecode( $_GET["para2"] );
	}


	print "para0 = " . $para0 . "<br>";
	print "para1 = " . $para1 . "<br>";
	print "para2 = " . $para2 . "<br>";


?>

ssh によるファイルシステム sshfs

自分のホームディレクトリのディスク容量が一杯になってきた時、データをサーバに一時的に退避したい物です。

しかし、退避したデータは逐次参照するので手元ですぐ確認出来るような状態にしておきたい。そんな時、データの保存先サーバ nfs や samba を用意するかもしれません。

しかし、これはサーバ側に何らかの設定をしなければいけない為、サーバ管理者の権限が無い場合、どうする事もできません。

続きを読む

powertop による電力管理の監査と分析

昔の Linux kernel は、一定の時間間隔(1000Hz)でタイマ割り込み処理を行っていたので、実行するプロセスが無いアイドル状態であっても、CPU が動作していて電力を消費していました。

定期的なタイマ割り込みを行わない Tickless kernel を各ディストリビュータが採用しだしてアイドル状態の続くCPU は、長い時間スリープする事ができるので、消費電力を削減できるようになりました。powertop は、CPU を頻繁にウェイクアップさせる kernel のコンポーネント、ユーザースペースアプリケーションを特定でき、個別のデバイス、プロセスが消費している電力を予測して表示する事ができます。

続きを読む

WordPress のパスワードを mysql コマンドを使って変更する

WordPress のログインパスワードを忘れた場合、ログイン画面の「パスワードをお忘れですか?」->「ユーザー名またはメールアドレスを入力してください。新しいパスワードを作成するためのリンクをメールでお送りします。」より登録したメールアドレスにパスワードの再設定リクエストを送ることが出来るが、メールアドレスが使用不可になっていた場合、変更が不可能になります。

そこで、mysql コマンドを使って直にパスワードを変更する方法を紹介します。

続きを読む

shred コマンドを使ってデータ漏洩を防ぐ

受け渡しが終わるとUSBメモリ内のファイルを削除して、また新しいデータを入れてデータの受け渡しを行う。しかしUSB内のデータは見かけ上削除されていますが、データはまだ残っており、
データ復旧ツールなどを使えば削除したデータを復旧出来る可能性があります。

USBメモリを使ってデータを外部の人に渡す場合、データの漏洩を防ぐ為にはUSBメモリのクリーンナップをした方が情報の漏洩を少しでも防ぐ事ができます。

続きを読む

root 権限使用ユーザ(sudo, 管理者グループ)の制限、変更

sudo とは

sudo(“su do”)は、UNIXおよびUnix系オペレーティングシステムのプログラムの1つで、ユ ーザーが別のユーザーの権限レベルでプログラムを実行するためのコマンドである。
一般的に、ユーザーがスーパーユーザー(superuser、すなわちroot)の特権レベルを利用する際に用いられることが多い。

sudo – ウィキペディア
https://ja.wikipedia.org/wiki/Sudo

sudo は、指定したユーザーでコマンドを実行するコマンドです。

sudo -u root, sudo -u taro のように使用し、ユーザを指定しない場合は、 rootとして実行されます。

続きを読む

trash-cli コマンドを使ってゴミ箱を有効活用

trash は、ゴミ箱を操作する コマンドです。trash ファイル名 or ディレクトリ名と実行するとデータをゴミ箱に移動してくれます。
ファイルマネージャーのゴミ箱と同様に使えるのでとても便利です。

続きを読む