さくらサーバー内のindex.htmlファイルで、PHPを記述したが動作しない…
こんな悩みを解決できる記事を書きました。
——– この記事を書いている人 ——–
ECサイト・WordPressでのオリジナルテーマの制作を60件ほど経験
キーワード: [slick 下 余白]、[breadcrumb navxt アーカイブページ]において1位を獲得(2022/11)
さくらサーバー内のindex.htmlファイルで、PHPを動作させる方法
大体のサーバーであれば、以下のコードを『.htaccess』に記述することで、index.htmlファイルで、PHPを動作させることが可能です。
AddType application/x-httpd-php .php .html
AddHandler application/x-httpd-php .php .html
さくらサーバーの場合は、以下の手順が必要になります。
➀ 『php.cgi』を作成
➁ 『.htaccess』を作成
また、ファイルやフォルダの階層の全体像は、以下のようになります。
https://sample.com/
│
├─img
│
├─css
│ └─style.css
│
│─index.html
│
│─php.cgi(パーミッションを『705』または『755』に設定)
│
└─.htaccess(パーミッションを『644』に設定)
順番に解説しますね!
➀ 『php.cgi』を作成
まず、テキストエディタで下記の2行を記述した『php.cgi』ファイルを作成します。
#!/bin/sh
exec /usr/local/bin/php-cgi
作成したファイルを、FTPを使用してアップロードします。
アップロードする時のポイント2つ
- index.html(ルートディレクトリ)と同じ階層に置く。(必須ではないが、後述する『.htaccess』のコードを変更する必要があります。)
- ファイルのパーミッションを「705」または「755」に設定する。
『.htaccess』を作成
次に、テキストエディタで下記の2行を記述した『.htaccess』ファイルを作成します。
Action myphp-script /php.cgi
AddHandler myphp-script .php .html
アップロードする時のポイント2つ
- index.html(ルートディレクトリ)と同じ階層に置く。
- ファイルのパーミッションを「644」に設定する。
1行目の『/php.cgi』は、『/php.cgi』の場所となっています。
(上記の記述の場合は、index.html(ルートディレクトリ)と同じ階層にあることになります。)
例えば、『cgi』という名前のフォルダの中にアップロードした場合は、『/cgi/php.cgi』となります。
以上となります。