欢迎各位兄弟 发布技术文章
这里的技术是共享的
在 Linux 系统中做前端运维时,有时需要查看 apache 的错误日志 error log、access log 等配置,这些配置都写在 httpd.conf 文件中,如何知道当前使用的 apache 具体用的是哪个 httpd.conf 呢?步骤如下所示。
[root@iZuf6crxor2b7uwzq9sutyZ ~]# ps -ef|grep httpd
root 4517 1 0 Nov19 ? 00:01:12 /usr/sbin/httpd -DFOREGROUND
root 8043 1 0 Jan13 ? 00:00:00 vim /etc/httpd/conf/httpd.conf
apache 19822 4517 0 10:40 ? 00:00:00 /usr/sbin/httpd -DFOREGROUND
apache 19823 4517 0 10:40 ? 00:00:00 /usr/sbin/httpd -DFOREGROUND
apache 19967 4517 0 10:43 ? 00:00:00 /usr/sbin/httpd -DFOREGROUND
apache 20008 4517 0 10:45 ? 00:00:00 /usr/sbin/httpd -DFOREGROUND
apache 20220 4517 0 10:53 ? 00:00:00 /usr/sbin/httpd -DFOREGROUND
apache 20246 4517 0 10:54 ? 00:00:00 /usr/sbin/httpd -DFOREGROUND
apache 20247 4517 0 10:54 ? 00:00:00 /usr/sbin/httpd -DFOREGROUND
apache 20268 4517 0 10:55 ? 00:00:00 /usr/sbin/httpd -DFOREGROUND
apache 20297 4517 0 10:56 ? 00:00:00 /usr/sbin/httpd -DFOREGROUND
apache 20301 4517 0 10:56 ? 00:00:00 /usr/sbin/httpd -DFOREGROUND
root 20401 20345 0 10:58 pts/1 00:00:00 grep --color=auto httpd
如果 ps -ef|grep httpd 命令的结果中显示,apache 启动时使用了 -f 选项指定了配置文件,如下样例显示,则可以直接看到配置文件的具体路径为 /home/apache/conf/httpd.conf。
/home/apache/bin/httpd -f /home/apache/conf/httpd.conf -k start
但是第一步的结果并未显示 -f 选项,则继续执行第二步。
Step 1 显示 root 用户启动 apache 的结果为第一条:
root 4517 1 0 Nov19 ? 00:01:12 /usr/sbin/httpd -DFOREGROUND
apache 命令所在路径为 /usr/sbin/httpd,继续执行 httpd -S 命令,则可以看到 apache 的具体配置。
[root@iZuf6crxor2b7uwzq9sutyZ ~]# /usr/sbin/httpd -S
[Fri Dec 04 11:13:12.738249 2020] [alias:warn] [pid 20927] AH00671: The Alias directive in /etc/httpd/conf/httpd.conf at line 145 will probably never match because it overlaps an earlier Alias.
VirtualHost configuration:
ServerRoot: "/etc/httpd"
Main DocumentRoot: "/webapp"
Main ErrorLog: "/etc/httpd/logs/error_log"
Mutex proxy: using_defaults
Mutex authn-socache: using_defaults
Mutex default: dir="/run/httpd/" mechanism=default
Mutex mpm-accept: using_defaults
Mutex authdigest-opaque: using_defaults
Mutex proxy-balancer-shm: using_defaults
Mutex rewrite-map: using_defaults
Mutex authdigest-client: using_defaults
PidFile: "/run/httpd/httpd.pid"
Define: _RH_HAS_HTTPPROTOCOLOPTIONS
Define: DUMP_VHOSTS
Define: DUMP_RUN_CFG
User: name="apache" id=48
Group: name="apache" id=48
结果显示,apache 使用的 httpd.conf 为 /etc/httpd/conf/httpd.conf。
来自 https://blog.csdn.net/piaoranyuji/article/details/110630877
可以通过php的phpinfo查看吧
[root@master apache]# bin/httpd -V
Server version: Apache/2.4.4 (Unix)
Server built: Jun 30 2021 14:31:03
Server's Module Magic Number: 20120211:11
Server loaded: APR 1.4.6, APR-UTIL 1.4.1
Compiled using: APR 1.4.6, APR-UTIL 1.4.1
Architecture: 32-bit
Server MPM: event
threaded: yes (fixed thread count)
forked: yes (variable process count)
Server compiled with....
-D APR_HAS_SENDFILE
-D APR_HAS_MMAP
-D APR_USE_SYSVSEM_SERIALIZE
-D APR_USE_PTHREAD_SERIALIZE
-D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
-D APR_HAS_OTHER_CHILD
-D AP_HAVE_RELIABLE_PIPED_LOGS
-D DYNAMIC_MODULE_LIMIT=256
-D HTTPD_ROOT="/usr/local/apache"
-D SUEXEC_BIN="/usr/local/apache/bin/suexec"
-D DEFAULT_PIDLOG="logs/httpd.pid"
-D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
-D DEFAULT_ERRORLOG="logs/error_log"
-D AP_TYPES_CONFIG_FILE="/etc/httpd/mime.types"
-D SERVER_CONFIG_FILE="/etc/httpd/httpd.conf"
[root@master apache]#