ビルトインPHPサーバ

M1に端を発する長いウェブマスター歴を持ちながら、岡本がPHPの便利さを実感したのはごく最近の事でした。過去にちょっと使ったWordPressのせいでPHPに良い印象を持たなくなってしまっていたのですが、HTML5とCSS3と一緒にPHPを使うとやっぱり便利。そしてそれを突き詰めてシステム化するとWordPressっぽくなるということもわかりました。自分が捌ける程度にシステム化しつつ、有効に積極的にPHPを使っていこうということで、今ではPHPをガッツリ使っています。ここでは、PHPのビルトインウェブサーバ機能を使って、PHP入りHTMLを簡単にローカルで確認する方法をまとめておきます。

理由は不明ですが、同じ設定なのにデスクトップでは動いて、ノートPCでは下記のようなエラーが出てしまったので、一部修正しました(2019.06.12追記)。
Warning: Unknown: failed to open stream: No such file or directory in Unknown on line 0

PHP確認環境の構築手順

  1. PHP For Windows: Binaries and sources Releasesから最新版のPHP一式 (Thread Safe) のzipファイルをダウンロード
  2. C:\phpに解凍
  3. WindowsでC:\phpのpathを通す
  4. コマンドプロンプトで確認
    php -v
  5. コマンドプロンプトでジャンクションを作成
    mklink /J C:\php\includes "ローカルディレクトリ"
    "で囲めばローカルディレクトリにはスペースが入っていてもOK
  6. 解凍先のphp.ini-developmentをphp.iniにリネームして下記の通り修正
    
    include_path = ".;c:\php\includes"
    
    extension_dir = "ext"
    
    extension=mbstring
    
    [mbstring]
    mbstring.language = Japanese
    mbstring.internal_encoding = UTF-8
    mbstring.http_input = pass
    mbstring.http_output = pass
    mbstring.encoding_translation = Off
    mbstring.detect_order = UTF-8,SJIS,EUC-JP,JIS,ASCII
    mbstring.substitute_character = none
    mbstring.func_overload = 0
    mbstring.strict_detection = Off
    ;mbstring.http_output_conv_mimetype=
    
    date.timezone = "Asia/Tokyo"
                            
  7. 動作を確認したいローカルディレクトリのルート(例えばC:\Users\you\web\local)に下記の通りrouter.phpを作成
    
    <?php
    $path = $_SERVER["SCRIPT_FILENAME"];
    if(preg_match("/\.html$/", $path)){
        chdir(dirname($path));
        return require($path);
    }
    return false;
    ?>
                            
  8. 起動のバッチファイルphp.bat(ファイル名は変更可)を下記の通り作成(cdの先はrouter.phpを置いたパスに合わせる)
    
    cd C:\php\includes
    php -S localhost:8080 router.php
    pause
    exit
                            
  9. バッチファイルをダブルクリックしてコマンドプロンプトで実行
  10. ブラウザで localhost:8080 を開いて表示確認
  11. 確認が終わったらブラウザを閉じ、コマンドプロンプトを閉じて終了

公開日:2018年08月05日
最終更新日:2019年06月12日