PHPプログラムに関する各種メモ書き

PHPでWEBサーバー(ローカルサーバ)を立ち上げる。ディレクトリ一覧を表示させる

● PHPでビルトインサーバ(ローカルサーバ)を立ち上げる

-S : ポート番号を指定
-t : ドキュメントルートにするディレクトリ

php -S 0.0.0.0:8000 -t dist

これで http://localhost/ または http://ローカルIPアドレス/ で表示できます。

● PHPでビルトインサーバ(ローカルサーバ)を立ち上げ、(index.htmlがない場合に)ディレクトリ一覧を表示させる

php -S 0.0.0.0:8000 -t html html/_route.php

ファイル名 _route.php でドキュメントルートに保存

<?php
$f = preg_replace('/\/$/', '', __DIR__ . "{$_SERVER['REQUEST_URI']}");
if (is_dir($f)) {
	$abf = preg_replace('/\/$/', '', $_SERVER['REQUEST_URI']);
	$fs = glob("$f/*", GLOB_MARK);
	foreach ($fs as $v) {

		$v = str_replace($f . '/', '', $v);
		echo "<a href='$abf/$v'>$v</a><br/>";
	}
	return true;
} else {
	return false;
}

これでindex.htmlがない場合にディレクトリ一覧が表示されます。

● MacでのPHPビルトインサーバ起動スクリプト

Macの場合次のようにブラウザを自動立ち上げにしておくと楽です

例 : server_start.sh

local_ip=`ipconfig getifaddr en0`
open "http://$local_ip:8000/"
php -S 0.0.0.0:8000 -t httpdocs
No.1385
05/04 10:49

edit