[エックスサーバー ] htmlサイトにphpファイルを読み込む

メモ。

静的サイトの共通部分をphpでつくる

エックスサーバーで静的サイト(htmlサイト)を構築する際、ヘッダーやフッター、ナビゲーションなどの共通部分をphpでつくって読み込ませる手順

(なお2016年8月以前に契約したサーバーを利用している場合は違う可能性があります)

エックスサーバーのサーバー管理画面にログインし、「.htacccess編集
末尾の方に

AddHandler fcgid-script .php .phps .html
FCGIWrapper “/home/アカウント/ドメイン名/xserver_php/php-cgi” .php
FCGIWrapper “/home/アカウント/ドメイン名/xserver_php/php-cgi” .phps
FCGIWrapper “/home/アカウント/ドメイン名/xserver_php/php-cgi” .html

という部分がすでに書かれていると思うので赤字部分を追記する。

エックスサーバーのサブドメインはルートドメインの下層ディレクトリという構造になっているので、サブドメインに対応させたい場合でも同様。

公式サイトに「phpを多用し過ぎると読み込みに時間がかかり500系エラーが発生するおそれ」と注意書きがあったので、ヘッダー・フッターをphp化する前後でgtmetrixでスピードテストしてみるもエラーが出るほどの数値差ではない。

gtメトリックス

よほど多用しない限りは心配ないと思われる。
そもそもサイトの大部分をphp化したいのならwordpressで構築した方が早い。

phpコードを読み込む

htmlサイトを構築し任意の場所でphpコードを読み込む

<?php
 include( __DIR__ . '/hoge.php'); 
 ?>

(上記の例はphpファイルとhtmlファイルと同じ階層にある場合なので状況に応じて修正( ../../hoge.php など)