ホームページ >バックエンド開発 >PHPチュートリアル >LINUX_PHP チュートリアルでの Ubuntu Apache サービスの PHP 構成
Bkjia.Com ドキュメント システムの安定性を確保し、不可解な現象が発生しないように、Ubuntu システムは最新の状態に更新される必要があります。
$sudo apt-get アップデート
$sudo apt-get dist-upgrade
PHPサポートをインストールする
$sudo apt-get インストール libapache2-mod-php5
$sudo apt-get インストール php5
グラフィックをサポートしたい場合は、php5-gd を追加します。Mysql をサポートしたい場合は、php5-mysql を追加します。libapache2-mod-php5 がここで個別にリストされている理由は、主に php5 の依存関係が適切に行われていないためです。 libapache-mod-php4 パッケージがインストールされている可能性がありますので、無用なトラブルを避けるために別途指定した方がよいでしょう。友人がまだ問題を抱えている場合は、Synaptic で libapache-mod-php4 パッケージを検索し、インストールされている場合は削除してください。
PHP 構成ファイルを変更してメモリと最大ファイルアップロードサイズを制限する
最初に /etc/php5/apache2/php.ini ファイルを編集し、一般的な設定を行います。変更を加える前に、設定ファイルのバックアップを作成してください。何か問題が発生した場合に回復できるように。
...
memory_limit == 8M ==>必要なメモリ サイズに変更します
upload_max_filesize == 2M ==>ファイルアップロードの最大サイズを変更します
...
extension=mysql.so は Mysql サービスをサポートします
extension=gd.so は gd 関数をサポートします
...
実際、Ubuntu では、php5-mysql と php5-gd をインストールすると、上記の 2 行が自動的に変更されます。その前のコメントが削除されているかどうかを確認するだけです。
a. 現在、ほとんどの PHP オープン ソースは、以前の PHP バージョンとの互換性を保つために PHP4 で書かれているため、register_long_arrays を開く必要がある場合があります。そうしないと、$HTTP_GET_VARS や $HTTP_POST_VARS などの変数が使用されなくなります。問題が発生します。 a. さらに、php5 をインストールした後、/etc/apache2/mods-enabled/ にリンクがあるかどうかを確認することをお勧めします。
php5.load -> /etc/apache2/mods-available/php5.loadPHP を強化してセキュリティを強化します。なお、以下のセキュリティは状況に応じて異なりますので、機能を明記してありますが、問題がある場合は以下の制限に起因するものをコメントアウトしてください。それでは始めましょう。 /etc/php5/apache2/php.ini ファイルを再度編集します。一度にすべてを変更しない理由は、主に全員に明確なアイデアを提供するためです。
#セーフ モードで開く利点は、php シェルと同様に、chroot 環境であっても、PHP ファイルは同じ所有者のファイルにのみアクセスできることです。バックドアは役に立ちません。phpshell は非常に人気のある php バックドアで、その名前の通りシェルに非常に近いものです。
safe_mode = オン
#セーフ モードで開くと、Judge Online などの外部プログラムを呼び出す PHP が動作できなくなることに注意してください。
#次の設定は、侵入者がファイルを不正に読み取るのを防ぐために、fopen() や file() などの関数が動作できるディレクトリ範囲を制限します。/var/www の後に必ず「/」を追加してください。それ以外の場合は、/var/wwww 配下のファイルを追加してください。にもアクセスできます。このオプションを使用すると、/var/www/ ディレクトリにない PHP ファイル (PhpMyAdmin パッケージなど、ソフト リンクによって /var/www/ ディレクトリにリンクされているプログラムを含む) が実行されなくなります。これらのファイルは、後で正しく実行されなくなります。このオプションは設定されています。
open_basedir = /var/www/
#サービス情報の漏洩を避けるため、phpinfo関数とget_cfg_var関数の使用は禁止されています。通常は、PHPが正常に動作することを確認してから終了してください。
disable_functions = phpinfo,get_cfg_var
#PHPプログラムのエラーログを設定する
error_reporting = E_ALL
log_errors = オン
error_log = /var/log/php_err.log
#php プログラムで register_globals が必要であると指定されていない場合は、 register_globals を Off に設定するのが最善です。これにより、多くのセキュリティ問題を回避できます。プログラムで register_globals が必要な場合は、それをオフにしないでください。 Ubuntu はデフォルトでオフになっています。
register_globals = オフ
#リモート アドレスを開くことは禁止されています。php include の最近の脆弱性を覚えていますか? PHP プログラムに変数が含まれている場合、侵入者はこの制御サーバーを使用して、phpshell などのリモート PHP プログラムをローカルで実行できるため、これを閉じます。
allow_url_fopen = オフ
それでは今日は終わりにしましょう!