ロリポップ+Welcartでの運用時はPHPセーフモードの解除が必要

WordPressのカートシステムプラグインのWelcartは、PHPセーフモード非対応ですが、ロリポップの初期モードはそのセーフモードであるため、解除作業が必要です。

※私はPHPに関しては初心者レベルなので、この先の情報↓を利用は自己責任でお願いします。

解除方法

  1. ロリポップにログイン
  2. 「Webツール」>「PHP設定」をクリック
  3. 「そのほか」の「safe_mode」をOFFに
  4. 「そのほか」の「variables_order」に"EGPCS"を入力
  5. 変更を確定するため「php.iniを設定する」ボタンをクリック

variables_orderが何なのか分からなかったので調べて見たところ、
EGPCSは、Environment、Get、Post、Cookie、Serverの頭文字で、PHPで使われるコードの利用可否を設定するようなもの(←ちゃんと理解していない)みたいです。ファイルのパーミッションの設定みたいなものかなあ、といういい加減な理解ではありますが、並び順に意味がある(優先順位?)ことまでは分かりました。
こういうのはデフォルトの設定にしといた方が問題の発生を回避できるので、初期値であるEGPCSを設定する事にしました。

セキュリティへの影響が気になりますが、セーフモードをOFFにしてる時点で一定のリスクはあるわけで、必要な機能を使う上でのトレードオフ、といったところでしょうか。
調べるほどに、「パフォーマンスを向上させたいから、Eイラネ。」とか、「セキュリティのために、CはOFFった。」とかありますが、上級者向けの設定かなぁ、と思います。

個人的には、WelcartではCは有効の方がいいのではないかなと思っています。Welcartはサーバーキャッシュの利用は十分に理解しないと危険(原則的に避けるべき)なので、利便性向上のためにはブラウザ側に保管するCookieを利用することも有力な選択だと思います。

参考:
PHP設定 / サーバー・プログラム / マニュアル - レンタルサーバーならロリポップ!
http://www.php-labo.com/phpini/detail/q/variables_order