如何在apache(PHP)上找到httpd.conf文件的路径?我不知道我的脚本是否会在windows apache或linux中运行,我需要知道在哪里可以找到这个文件,以便从那里找到一个参数。谢谢!
答案 0 :(得分:24)
我认为它没有暴露给PHP。
在终端中运行httpd -V
,你会在那里找到它(命令名称取决于你的系统/ apache版本,它也可以是apache -V
):
bash-3.2# httpd -V
Server version: Apache/2.2.22 (Unix)
Server built: Aug 24 2012 17:16:58
Server's Module Magic Number: 20051115:30
Server loaded: APR 1.4.5, APR-Util 1.3.12
Compiled using: APR 1.4.5, APR-Util 1.3.12
Architecture: 64-bit
Server MPM: Prefork
threaded: no
forked: yes (variable process count)
Server compiled with....
-D APACHE_MPM_DIR="server/mpm/prefork"
-D APR_HAS_SENDFILE
-D APR_HAS_MMAP
-D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
-D APR_USE_FLOCK_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=128
-D HTTPD_ROOT="/usr"
-D SUEXEC_BIN="/usr/bin/suexec"
-D DEFAULT_PIDLOG="/private/var/run/httpd.pid"
-D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
-D DEFAULT_LOCKFILE="/private/var/run/accept.lock"
-D DEFAULT_ERRORLOG="logs/error_log"
-D AP_TYPES_CONFIG_FILE="/private/etc/apache2/mime.types"
-D SERVER_CONFIG_FILE="/private/etc/apache2/httpd.conf" <-- HERE IT IS
但如果您只想知道某个配置变量的值,那么phpinfo()
,getenv()
或apache_getenv()
应该足够了
答案 1 :(得分:13)
这是查找httpd.conf文件的经典方法:
# find / -name 'httpd.conf' -print
您也可以使用
文件定位文件locate httpd.conf
答案 2 :(得分:4)
查看从phpinfo()获得的输出的开始,在那里显示基本的apache配置文件。最简单的是制作一个简单的PHP脚本并调用一次:
<?php phpinfo(); ?>
同样,您也可以直接查询这些设置。查看文档!
答案 3 :(得分:2)
httpd -V
它将显示所有编译设置,在您将找到的结果中间:
/usr/local/apache
conf/httpd.conf
Apache conf文件:
/usr/local/apache/conf/httpd.conf
root@host [~]# httpd -V
Server version: Apache/2.4.16 (Unix)
Server built: Dec 15 2015 10:01:02
Cpanel::Easy::Apache v3.32.6 rev9999
Server's Module Magic Number: ...
Server loaded: APR 1.5.2, APR-UTIL 1.5.4
Compiled using: APR 1.5.2, APR-UTIL 1.5.4
Architecture: 64-bit
Server MPM: prefork
threaded: no
forked: yes (variable process count)
Server compiled with....
-D APR_HAS_SENDFILE
-D APR_HAS_MMAP
-D APR_HAVE_IPV6 (IPv4-mapped addresses disabled)
-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="conf/mime.types"
-D SERVER_CONFIG_FILE="conf/httpd.conf"
答案 4 :(得分:0)
如果您使用的是xampp 该文件将在此目录xampp \ apache \ conf
中答案 5 :(得分:0)
如果未在phpinfo()中列出,可以使用
apache_getenv(/* variable */)