0

升级到 Yosemite 后,我的 Apache 配置似乎损坏了。我的主要问题是 Document Root 已更改。现在我得到的只是“它有效!” 页。

我不知道为什么,对我来说一切都很好。

我已经正确设置/etc/apache2/httpd.conf并且 DocumentRoot 实际上/Library/WebServer/Documents和以前一样......也包含相同的......此外,没有加载/private/etc/apache2/httpd.conf为用户(例如)提供目录的附加配置。localhost/~user1

我不知道该怎么办。

有人可以帮我吗?

谢谢。

4

1 回答 1

0

我有同样的问题。显然,文档根目录更改为 /usr/local/var/apache2/htdocs 。我通过检查 apache 正在加载的配置文件发现了这一点。

sudo apachectl -V

你应该看到这样的东西

 -D APR_HAS_SENDFILE
 -D APR_HAS_MMAP
 -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
 -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/Cellar/apache24/2.4.10"
 -D SUEXEC_BIN="/usr/local/Cellar/apache24/2.4.10/bin/suexec"
 -D DEFAULT_PIDLOG="/usr/local/var/run/apache2/httpd.pid"
 -D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
 -D DEFAULT_ERRORLOG="logs/error_log"
 -D AP_TYPES_CONFIG_FILE="/usr/local/etc/apache2/mime.types"
 -D SERVER_CONFIG_FILE="/usr/local/etc/apache2/httpd.conf"

最后显示不再加载 /private/etc/apache2/httpd.conf 而是从 /usr/local/etc/apache2/httpd.conf 加载它

一个简单的解决方法是将所有 /Library/Webserver/Documents 移动到新的 DocumentRoot 位置 /usr/local/etc/apache2/htdocs

或者只是将旧的 httpd.conf 文件传递​​给 apachectl

sudo apachectl -f /private/etc/apache2/httpd.conf
于 2014-11-22T00:33:17.263 回答