レンタルサーバでPHPのsystem関数やexec関数が使用できずにエラーが出力される
2024/01/10
レンタルサーバ上でPHPのsystem関数を実行しようとすると「Fatal error: Uncaught Error: Call to undefined function system()」というエラーが出力された。exec関数も同様のエラー内容となった。調査したところphp.iniの設定により制限がかかっていた。
phpinfo()で確認
disable_functionsという項目にsystemとexecが設定されており、こちらが原因で当該関数は利用できない模様。
disable_functions
リファレンスによると当該設定を行うことで指定した関数を無効にすることができるとのこと。
その他
PHPがセーフモードで動作している場合、exec関数が使えなくなる場合もある模様。今回は前述の設定の問題だったけど、このようなケースもある点を覚えておく。
所感
今回はsystem関数でmysqldumpを実行しようと思ったが、当該環境ではphp.iniの変更が行えないため断念。以前にメモした形でバックアップを取る形とした。
関連記事
-
-
メールサーバーを構築せずにGmailのSMPTを使ってPHPでメール送信
メールサーバーが立てられなかったり、無料サーバーのため使えなかったりといった場合 ...
-
-
PHPで「Warning: date(): It is not safe to…」エラーの対応方法
PHPでdate関数を使った際に「Warning: date(): It is ...
-
-
htmlspecialcharsを通してMySQLに格納したものを元に戻して出力
MySQLにHTMLタグを入れたくない場合にhtmlspecialcharsを使 ...
-
-
PHPで日時比較時の注意
PHPで日時を比較する際にミスがあったのでメモ。 基本形は下記。 $limit_ ...
-
-
PHPで日時のフォーマットをISO 8601型とDateTime型を相互に変換する方法
他社のAPI等のレスポンスで日時部分が「YYYY-MM-DDTHH:II:SSZ ...
