質問: plesk 上のバーチャルホストについて、safe_modeをoff にする方法はありますか?
回答: #### 回答 いくつかのweb アプリケーションにおいては、php のsafe_mode (セーフモード)を無効にする設定を行う必要がございます。/etc/php.ini の該当する項目を編集して頂くことで設定を行うことが可能ですが、こちらの設定を行った場合いくつかの脆弱性を引き起こす可能性がございます。そのため、弊社では、safe_mode を off にしないことを強くお勧めします。 どうしても設定したい場合は、php.ini での off ではなく、弊社では個々のドメイン毎に、下記の手順にてsafe_mode を無効にする(offに変更する)方法をおすすめ致します。ただし、safe_modeを無効にする作業自体も含め、弊社のサポート範囲外とさせていただきますので、お客様の責任の範囲にて行っていただきますようお願いいたします。 なお、plesk8以降では、plesk画面上からsafe_modeをoffにすることも可能になっておりますが、弊社ではsafe_mode を off にしないことを強くお勧めいたします。 ■**解決方法** **plesk7.xの場合** 例:ドメイン名 : example.jpの場合 1. /home/httpd/vhosts/example.jp/confディレクトリに、以下の内容で vhost.confというファイルを作成し、以下の内容で保存します。 **osがcentos4/rhel4以前バージョンの場合** php_admin_flag engine on php_admin_flag safe_mode off **osがcentos5/rhel5の場合** php_admin_flag engine on php_admin_flag safe_mode off 2. plesk が vhost.conf を読み込むよう設定します。 # /usr/local/psa/admin/sbin/websrvmng --reconfigure-vhost --vhost-name=example.jp 3. apache を再起動します。 # /etc/init.d/httpd restart **plesk8.xの場合** [ドメイン]-[(ドメイン名)]-[設定]画面にて、php の 'safe_mode' を有効(on)にする のチェックボックスをoffにして、[ok]を押してください。以上の操作でsafe_modeをoffにすることができます。この設定では、open_basedirの設定は無効になりません。 **plesk9.xの場合** [ドメイン]-[(ドメイン名)]-[webホスティング設定]画面にて、php の 'safe_mode' を有効(on)にする のチェックボックスをoffにして、[ok]を押してください。以上の操作でsafe_modeをoffにすることができます。この設定では、open_basedirの設定は無効になりません。 **plesk10.xの場合** [ドメイン]-[(ドメイン名)]-[カスタマイズ]-[php設定]画面にて、php の 'safe_mode' を有効(on)にする のチェックボックスをoffにして、[ok]を押してください。以上の操作でsafe_modeをoffにすることができます。この設定では、open_basedirの設定は無効になりません。 対象サービス pleskコントロールパネルを搭載している全てのサーバサービス