无法在 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
有访问权限,别名和目录中的路径匹配即可。
我是 运行 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
有访问权限,别名和目录中的路径匹配即可。