私の目標は、Apacheサーバーを最適化することです。まず、いくつかのモジュールを無効にしたいと思います。 Webサーフィンをしてみたところ、CentOS7にインストールされたApacheに関連する内容を特に見つけることができませんでした。サーフィンをしながら得た教訓は次のとおりです。不要なモジュールの無効化、コマンドラインでApacheモジュールを有効にするなど。httpd -t
このコマンドを使用してApacheサポートモジュールを一覧表示できます。また、インストール中にコンパイルされたモジュールが/etc/httpd/modules
そのディレクトリにあることもわかります。
それでは、CentOS7でApacheモジュールを無効にして有効にする正しい方法は何ですか?
答え1
CentOS 7で正しい方法は、無効にしたいモジュールを/etc/httpd/conf.modules.d
含む対応するconfファイルを見つけて見つけることです。あなたも確認できますが、/etc/httpd/conf/httpd.conf
フォルダを使用するとより良い幸運を享受できますconf.modules.d
。
コメントアウトしてApacheを再ロードするだけです。
答え2
/etc/httpd/conf.modules.d
または を使用する/etc/httpd/conf.d
場合の原則は同じです。モジュールまたは構成ファイルを無効にするには、そのファイル拡張子の名前を.conf
。
答え3
私はあなたを助けるために小さなPythonスクリプトを作成しました。これを見てくださいhttps://github.com/zioalex/unused_apache_modules
予想できる内容は次のとおりです。
curl http://localhost/server-info > http_modules_test.txt
cat http_modules_test.txt| python find_unused_apache_mod.py
1
Module name mod_python.c
Configuration Phase Participation: 4
Request Phase Participation: 11
Current Configuration: 3
2
Module name mod_version.c
Configuration Phase Participation: 0
Request Phase Participation: 0
Current Configuration: 1
3
Module name mod_proxy_connect.c
Configuration Phase Participation: 0
Request Phase Participation: 0
Current Configuration: 0
To remove safely:
['mod_proxy_connect.c']
POPPED: mod_proxy_connect.c
To KEEP: ['mod_python.c', 'mod_version.c', 'mod_proxy_connect.c']
答え4
セントース7では:
/etc/httpd/conf.modules.d
モジュールを有効または無効にするには、以下を使用してフォルダ内のファイルをチェックアウトする必要があります。
sudo nano /etc/httpd/conf.modules.d/*.conf
有効なモジュールのリストに直接移動するには:
sudo nano /etc/httpd/conf.modules.d/00-base.conf
このファイルには、Apacheに付属の/etc/httpd/conf.modules.d/00-base.conf
ほとんどのモジュール(およびディレクティブ)が含まれています。LoadModule
モジュールを無効にするには、特定のディレクティブをコメントアウトするだけです。手順はLoadModule
次のとおりです。
LoadModule status_module "module/mod_status.so"
#
モジュールを無効にするにはディレクティブの前に追加し、#
無効にしたモジュールを有効にするには削除します。たとえば、次をコメントアウトします。
#LoadModule status_module "modules/mod_status.so"
ステータスモジュールが無効になります。
有効なモジュールを確認するには、次を使用します。
httpd -M
構文エラーを確認するには、次のようにします。
httpd -t
フォルダ内のすべてのファイルを表示するには、
conf.modules.d
次を使用します。sudo nano /etc/httpd/conf.modules.d/*.conf
Centos 7では、不要なモジュールをコメントアウトして無効にすることができます。ただし、MPM
Apacheサーバーのディレクティブを使用してロードされるモジュール用の他のファイルもあります。欲しいならLoadModule
httpd
MPMモジュールの交換、合格可能
/etc/httpd/conf.modules.d/00-mpm.conf