レンタルサーバで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の変更が行えないため断念。以前にメモした形でバックアップを取る形とした。
関連記事
-
-
SendGridを使ってメールサーバを構築せずにPHPからメールを送信する方法
メールサーバを構築せずに独自ドメインのメールアドレスにてメール送信を行いたい。過 ...
-
-
PHPでCSVファイルを出力する際に「①」や「㈱」等の環境依存文字が文字化けする対応方法
過去記事の方法を用いてPHPでCSVファイルを出力すると所々「?」という形に文字 ...
-
-
PHPのログイン認証をPEAR::Authパッケージで実装する方法
PHPのシステムである程度ちゃんとしたログインシステムが必要になった。今までログ ...
-
-
バニラPHPでフラッシュデータ(フラッシュメッセージ)機能を実装する方法
PHPフレームワークのCodeIgniterを勉強していた際にページ遷移好みに表 ...
-
-
PHPで複数のファイルをまとめてzipファイル化し、ダウンロードさせる方法
PHPで複数のファイルをまとめてzipファイル化し、ユーザーにダウンロードさせた ...