htmlファイルでphpを動作させる場合は、サーバー、Apacheなどの設定か、.htaccessの設定が必要になります。
費用が安い共用レンタルサーバーでは、Apacheの設定を行えません。
Apacheのhttpd.confを修正できれば楽ですが。
共用サーバーでも機能が優れ、使いやすいエックスサーバーで、htmlファイルでPHPをhtmlで動作する.htaccess設定を記載します。
エックスサーバーの.htaccess設定
エックスサーバーの設定は、phpのバージョンも含め、いくつか設定がありますが、2016年8月に新仕様のサーバーに変更されました。
html内にphpコードを埋めこんでも、html拡張子で表示する事ができると思われます。
sv2001~ 2016年8月16日以降に契約したサーバーの.htaccess設定
sv2001~のサーバーは、下記を.htaccess内に記載すれば動作すると思われます。
suPHP_ConfigPath~の下の行に
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
FCGIWrapperの1行目と2行目、~php-cgi” .phpと~php-cgi” .phpsは自動追記されていると思います。
xserver_php/php-cgi” .phpsの行をコピーし、最後の.phpsを.htmlに置き換えましょう。
php5.3などは下記を記載します。
AddHandler fcgid-script .html
または
AddHandler fcgid-script .php .phps .html
どちらかで機能すると思われます。
~sv1999.xserver.jpの.htaccess設定
2016年8月16日以前に契約したサーバーはsv1.xserver.jp~sv1999.xserver.jpのサーバーです。
エックスサーバーでは、以前に契約したサーバーも最新の環境に移行すると発表しています。
もし、現在のサーバーから最新のサーバーに変更された場合、
.htaccessを変更しないと動作しない場合がありますのでご注意ください。
特にphp5.3~5.5で構築されたワードプレスなどのサイトは移行時
AddHandler fcgid-script .php .phps .html
に変更しないと管理画面にログインすらできない状態になる可能性があります。
最新サーバー環境に移行前の.htaccess設定
phpバージョン、PHP4.3.9、PHP5.1.6の場合
PHP4.3.9、PHP5.1.6の場合は下記の設定が必要です。
AddHandler x-httpd-php .php .phps .html
もし、PHP5.1.6で動かない場合は下記で動作するか試します。
AddHandler x-httpd-php5 .php .phps .html
phpバージョン、PHP5.3~の場合
PHP5.3の場合
AddHandler x-httpd-php5.3 .html .php .phps
PHP5.4の場合
AddHandler x-httpd-php5.4 .html .php .phps
PHP5.5の場合
AddHandler x-httpd-php5.5 .html .php .phps
FastCGIを有効にした場合
FastCGIが有効の場合は、
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
で設定できると思います。
この記載がエックスサーバー以外で使えるかといいますと、サーバーによって「.htaccess」の記載が違います。
しかし、エックスサーバーのsv1.xserver.jp~sv1999.xserver.jp記述は、エックスサーバーの上位サーバー「X2サーバー」とほとんど同じです。
ファイルが文字化けする場合
いままでページが文字化けしていなくてもエックスサーバーのアップグレードの際、.htaccessが原因で文字化けする場合があります。
.htaccessで突然文字化けする場合はhtmlの文字コードを確認してみましょう。
phpをhtmlファイルで動かす場合、文字コードはutf-8を指定した方が良いです。
html内の文字コードをshift-jisをutf-8に設定し、ファイルもutf-8で保存して文字化けがなおるか確認してみましょう。
phpが記載されたhtmlファイルで画面が真っ白、Parse errorが表示される場合
phpが記載されたhtmlファイルでParse error: syntax error,が表示される場合は、XML宣言がないか確認しましょう。
<!--?xml version="1.0" encoding="utf-8"?-->
XML宣言がある場合は削除すればParse errorは解消されます。
htmlでphpを動かす場合、XML宣言があると画面が真っ白になる場合があります。
500エラーがではなく、画面が真っ白になる場合は、XML宣言もないか確認しましょう。