无法在 Mac 上使用 Apache 加载站点

Cannot get site loaded with Apache on Mac

我是 运行 El Capitan,我正在尝试将我的网站托管在本地以使用 Apache 进行开发(随 OS 一起提供)。我完全按照说明 here 进行了操作。我制作了一个 anthony.conf 文件并将目录文本放在那里,我用 /Users/anthony/dev/web/unfinished-asteroids/ 替换了实际目录,然后将我的网络文件放在那里。我启动了 apache 并导航到 localhost/~anthony 但我得到了

Not Found: The requested URL /~anthony was not found on this server.

标准 404 错误。当我导航到本地主机时,它工作正常,我从位于 /Library/WebServer/Documents 的 index.html 中获取 "It works",我什至更改了那个 index.html 文件,它工作正常。

为什么我无法使用 Apache 查看我的网站?我所做的只是下载 this github repository 并将其放在我的 unfinished-asteroids 文件夹中,index.html 在根目录下。

看来您还需要执行几个额外的步骤。 OSX 附带的 apache 并没有什么特别之处,因此您的标准 apache 配置将起作用。但是要让 Userdir (~username) 在 El Capitan 上工作,这就是我必须做的

编辑 /etc/apache2/httpd.conf

在(或附近)第 166 行,取消注释

loadModule userdir_module libexec/apache2/mod_userdir.so

然后在第 493 行取消注释

Include /private/etc/apache2/extra/httpd-userdir.conf

然后编辑文件 /etc/apache2/extra/httpd-userdir.conf

取消注释第 16 行

Include /private/etc/apache2/users/*.conf

然后在 /etc/apache2/users/anthony.conf

<Directory "/Users/anthony/Sites/">
    Options Indexes MultiViews
    Require all granted
</Directory>

然后 sudo apachectl restart

这应该使 http://localhost/~anthony 指向您的站点目录。

日志存储在/var/log/apache2

现在,如果您只想访问 web 访问您的开发目录,您可以这样做......(不要进行上面列出的任何更改)

/etc/apache2/other/中创建一个名为mydev.conf的文件(名称并不重要,保存它需要以.conf'结尾)

并将其放入该文件中

Alias /dev /Users/anthony/dev/

 <Directory "/Users/anthony/dev">
   Options Indexes MultiViews
   Require all granted
 </Directory>

并重新加载 apache (sudo apachectl restart)

然后您将能够在 http://localhost/dev 访问您的开发文件夹,并且应该能够在 http://localhost/dev/web/unfinished-asteroids/

访问您的页面

上面的路径可以随意调整,只需要确保用户或组_www有访问权限,别名和目录中的路径匹配即可。