为什么另一个DocumentRoot工作,但/etc/apache2/httpd.con中定义的那个没有?

时间:2012-04-16 10:36:31

标签: macos apache httpd.conf

apache服务器已预先安装了Lion。问题是/etc/apache2/httpd.conf中的默认DocumentRoot是“/ Library / Webserver / Documents”,但当我访问我的页面时,它指向另一个目录,即“/ usr / htdocs”,比如,localhost / demo.php!

我无法弄清楚为什么会发生这种情况,我确信/ etc / apache2 /下的httpd.conf是apache在运行时读取的确切配置文件。

运行httpd -V时的部分结果如下:


     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"

我会非常感谢你的回复!谢谢

2 个答案:

答案 0 :(得分:0)

请检查DocumentRoot文件中定义/private/etc/apache2/httpd.conf的内容。

答案 1 :(得分:0)

您的http转储会显示您的答案。 httpd根目录设置为usr。您需要打开您的http conf文件并对其进行编辑以更改其指向的位置。您也可以在usr中使用.htaccess文件将所有流量定向到htdoc,或者可以在apache http conf中设置.htaccess文件。查看官方apache网站了解更多信息。