ホームページ >バックエンド開発 >PHPの問題 >phpinfo() が PHP コードのセキュリティから抜け出せない場合はどうすればよいですか?

phpinfo() が PHP コードのセキュリティから抜け出せない場合はどうすればよいですか?

青灯夜游
青灯夜游オリジナル
2021-06-02 15:06:123230ブラウズ

php コードセキュリティ phpinfo() が出てこない問題の解決策: まず php.ini ファイルを開き、「short_open_tag」項目を見つけて「short_open_tag = On」に設定し、次に Apache を再起動します。そしてphp.iniサービスをリロードするだけです。

phpinfo() が PHP コードのセキュリティから抜け出せない場合はどうすればよいですか?

#このチュートリアルの動作環境: Windows7 システム、PHP7.1 バージョン、DELL G3 コンピューター

1。問題の説明

PHP ファイル test.php を作成しました。コードは次のとおりです。

<?php
    echo phpinfo();
?>

ブラウザーはそれにアクセスしましたが、NULL を返しました。


##2. 問題の場所と解決策 オンラインで調べたところ、ほとんどの人が遭遇している問題は、実際には short_open_tags の問題であることがわかりました。 、そのコードは次のとおりです:

<?
    echo phpinfo();
?>

解決策:

この場合、php.ini ファイルを開いて「short_open_tag」を見つけ、コメントする必要があります。 line short_open_tag = Off Off にしてから開きます; short_open_tag = On で十分です、その後 Apache を再起動し、php.ini サービスをリロードすれば問題ありません。


ここにはさらに 2 つの質問があります。1 つは、php の実行時にどの php.ini ファイルが読み込まれるかを知る方法です。コマンド ラインで php --ini を実行して、php を見つけることができます。 .ini ファイル; 2 番目は、php.ini ファイルを再ロードする方法です。サーバーで php-fpm が有効になっている場合、一般的に、php-fpm を再起動しても問題ありません。コマンドは次のとおりです: service php-fmp restart. php -fpm サービスが有効になっていません (PHP の以前のバージョン)。通常、Apache サービスを再起動しても問題ありません。コマンドは service httpd restart です。

上記の手順を実行すると、ほとんどの人が遭遇する問題は解決しますが、これは他人の問題であり、私の問題ではありませんorz...

どうしようもなく、これは関連しているに違いないと感じましたphp の設定がわからないので、公式 Web サイトにアクセスして php.ini ドキュメントを読んだところ、次のような設定になっています:

  disable_functions string

このコマンドを使用すると、セキュリティ上の理由から特定の機能を禁止できます。カンマ区切りの関数名のリストを引数として受け入れます。 disable_functions はセーフ モードの影響を受けません。このディレクティブは php.ini でのみ設定できます。たとえば、httpd.conf


では設定できません。つまり、一部のメソッドは php.ini で設定できますが、これらのメソッドを呼び出すことはできません。php.ini を開いてこの設定を見つけてください。案の定、phpinfo() メソッドは次のように Disabled になっています:

disable_functions = phpinfo,system,proc_open,proc_close,show_source,popen,pclose

突然気づき、disable_functions から phpinfo() メソッドを一時的に削除し、php.ini ファイルをリロードしてから、test.php にアクセスしました。ブラウザから再度アクセスすると、今度は成功しました。はい、問題は解決しました。ただし、phpinfo() は非常に機密情報であることを友人に思い出してもらいたいため、通常はクライアントに公開しないことが最善であるため、テスト後すぐにオフにしました。


推奨学習: 「

PHP ビデオ チュートリアル

以上がphpinfo() が PHP コードのセキュリティから抜け出せない場合はどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。