Linux系统如何查询启用了哪些Apache模块?

Linux系统如何查询启用了哪些Apache模块?
Linux系统如何查询启用了哪些Apache模块

在本文中,我们将介绍如何检查服务器上已启用了哪些Apache模块。

些常见的Apache模块

  1. mod_ssl –为Apache开启HTTPS支持。
  2. mod_rewrite –开启URL重写,并支持.htaccess。
  3. mod_security –保护Apache免受暴力攻击或DDoS攻击。
  4. mod_status –允许监视Apache Web服务器的负载和页面静态信息。

Apache 命令的用法

在Linux中,apachectlapache2ctl 是 Apache 的前端,用于控制Apache HTTP的服务器接口。

可以通过下面的命令,来查询apache2ctl的用法信息:

$ apache2ctl help

或者


$ apachectl help

apachectl help

Usage: /usr/sbin/httpd [-D name] [-d directory] [-f file]
                       [-C "directive"] [-c "directive"]
                       [-k start|restart|graceful|graceful-stop|stop]
                       [-v] [-V] [-h] [-l] [-L] [-t] [-S]
Options:
  -D name            : define a name for use in  directives
  -d directory       : specify an alternate initial ServerRoot
  -f file            : specify an alternate ServerConfigFile
  -C "directive"     : process directive before reading config files
  -c "directive"     : process directive after reading config files
  -e level           : show startup errors of level (see LogLevel)
  -E file            : log startup errors to file
  -v                 : show version number
  -V                 : show compile settings
  -h                 : list available command line options (this page)
  -l                 : list compiled in modules
  -L                 : list available configuration directives
  -t -D DUMP_VHOSTS  : show parsed settings (currently only vhost settings)
  -S                 : a synonym for -t -D DUMP_VHOSTS
  -t -D DUMP_MODULES : show all loaded modules 
  -M                 : a synonym for -t -D DUMP_MODULES
  -t                 : run syntax check for config files

Apache可以按如下的方式来执行相关命令:

$ apachectl command

或者

$ apache2ctl command

要启动Apache并检查其状态,行以下两个命令:

$ sudo apache2ctl start
$ sudo apache2ctl status

启动Apache:

tecmint@TecMint ~ $ sudo apache2ctl start
AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message
httpd (pid 1456) already running

检查Apache的运行状态:

tecmint@TecMint ~ $ sudo apache2ctl status
Apache Server Status for localhost (via 127.0.0.1)

Server Version: Apache/2.4.18 (Ubuntu)
Server MPM: prefork
Server Built: 2016-07-14T12:32:26

-------------------------------------------------------------------------------

Current Time: Tuesday, 15-Nov-2016 11:47:28 IST
Restart Time: Tuesday, 15-Nov-2016 10:21:46 IST
Parent Server Config. Generation: 2
Parent Server MPM Generation: 1
Server uptime: 1 hour 25 minutes 41 seconds
Server load: 0.97 0.94 0.77
Total accesses: 2 - Total Traffic: 3 kB
CPU Usage: u0 s0 cu0 cs0
.000389 requests/sec - 0 B/second - 1536 B/request
1 requests currently being processed, 4 idle workers

__W__...........................................................
................................................................
......................

Scoreboard Key:
"_" Waiting for Connection, "S" Starting up, "R" Reading Request,
"W" Sending Reply, "K" Keepalive (read), "D" DNS Lookup,
"C" Closing connection, "L" Logging, "G" Gracefully finishing,
"I" Idle cleanup of worker, "." Open slot with no current process

Apache 可以采用以下语法,用参数替换 [apache-argument]:

$ apachectl [apache-argument]
$ apache2ctl [apache-argument]

执行如下命令,可以列出所有的Apache参数:

$ apache2 help    [On Debian based systems]
$ httpd help      [On RHEL based systems]

检查已启用 Apache 模块

要检查 Apache Web 服务器上启用了哪些模块,可以运行以下命令,其中-t -D DUMP_MODULES 是一个 Apache 参数,用来显示所有已启用/已加载的模块:

---------------  On Debian based systems --------------- 
$ apache2ctl -t -D DUMP_MODULES   
OR 
$ apache2ctl -M
---------------  On RHEL based systems --------------- 
$ apachectl -t -D DUMP_MODULES   
OR 
$ httpd -M
$ apache2ctl -M

列出所有已启用的模块:

[root@tecmint httpd]# apachectl -M
Loaded Modules:
 core_module (static)
 mpm_prefork_module (static)
 http_module (static)
 so_module (static)
 auth_basic_module (shared)
 auth_digest_module (shared)
 authn_file_module (shared)
 authn_alias_module (shared)
 authn_anon_module (shared)
 authn_dbm_module (shared)
 authn_default_module (shared)
 authz_host_module (shared)
 authz_user_module (shared)
 authz_owner_module (shared)
 authz_groupfile_module (shared)
 authz_dbm_module (shared)
 authz_default_module (shared)
 ldap_module (shared)
 authnz_ldap_module (shared)
 include_module (shared)
....

综上所述,我们介绍了如何列出所有已启用的apache模块的方法。

原创文章,作者:牛奇网,如若转载,请注明出处:https://www.niuqi360.com/lamp-config/check-apache-modules-enabled-in-linux/

发表评论

登录后才能评论