数日前のWordPressデザイン入れ替え時、固定ページの記述やプラグインの内容など、色々変更を入れたかったので別ディレクトリへ仮構築して、最後に切替という手順で行いました。
その際、通常であれば仮構築した環境のindex.phpと.htaccessを入れ替えることになるのですが、いつも通りの入れ替えだとうまくいきませんでした。
→入れ替え後、WordPressサイトへアクセス→サーバーのPHPバージョンは・・・のエラー表示。
調べると、XSERVER特有の設定が必要でした。
参考記事)
http://nelog.jp/xserver-wordpress-htaccess
http://memotora.com/2014/01/26/xserver-php-version/
元々ドメインルートにあった.htaccessには、以下の2行が入っていたので、それを移植して設置してOKとなりました。
(設置後、PHPバージョンをUPした際に、PHPバージョンの行は自動削除されていました)
→仮環境の.htaccessをドメインルートへコピー後、先頭行へ下記「設定前」の記述を追加。(ドメインルートでないWordPress環境には、下記の設定は含まれていない為)
設定前:
suPHP_ConfigPath /home/[サーバID]/[ドメイン]/xserver_php/ AddHandler x-httpd-php5.3 .php .phps
その後、WordPressの仮環境が動作することを確認後、PHPバージョンを5.6へUPして、最終的には下記の設定が自動書き換えされ、残りました。
設定後:
suPHP_ConfigPath /home/[サーバID]/[ドメイン]/xserver_php/ AddHandler fcgid-script .php .phps FCGIWrapper "/home/[サーバID]/[ドメイン]/xserver_php/php-cgi" .php FCGIWrapper "/home/[サーバID]/[ドメイン]/xserver_php/php-cgi" .phps
各レンタルサーバーで色々設定が異なることは結構ありますね。
少し前、SNI SSL(ネームベース)の場合のHTTPS設定も、さくらのレンタルサーバーの場合は、ちょっと特殊な設定が必要だということが 分かりました。
参考)
http://qiita.com/tabimoba/items/64ef60412abe7ad6f0ac
ついでに書くと、決済サービスの要件で、TLS1.2プロトコルへの対応が2017年4月からレンタルサーバー側で完了していないと接続できないということで確認した際、XSERVERは2016年12月中旬で対応完了していましたが、さくらのレンタルサーバーはTLS1.2への対応がその時点で未定でした。(決済サービス側の情報だと、さくらは4月に間に合わないかもという情報があったそうですが、最新情報は不明です)