在Mac上尝试启动Apache

0. 经过

因为想在Mac上使用本地Web服务器,所以我一边查找一边尝试了一下,但遇到了一些困惑,所以我尝试自己总结了一下。

1. 环境资讯

・苹果操作系统 macOS Mojave 10.14.1

$ sw_vers 
ProductName:    Mac OS X
ProductVersion: 10.14.1

・阿帕奇/2.4.34

$ httpd -v
Server version: Apache/2.4.34 (Unix)
Server built:   Aug 17 2018 16:29:43

似乎Mac上默认安装了Apache。

尝试启动Apache。

首先,让我们启动Apache吧。

$ sudo apachectl start

如果您在浏览器中访问http://localhost/并看到显示“ It works!”,那么说明启动成功!似乎正在显示/Library/WebServer/Documents/index.html.en。

如果要停止的话,可以使用$ sudo apachectl stop。
如果要重新启动的话,可以使用$ sudo apachectl restart。

3. 激活用户目录

为了编辑/Library/WebServer/Documents/index.html.en,需要root权限,所以不太适合日常使用。我们需要让普通用户能够访问其登录后的主目录下的文件。

首先,我们需要编辑httpd.conf文件。

$ sudo vi /etc/apache2/httpd.conf
#(前略)
#LoadModule userdir_module libexec/apache2/mod_userdir.so
#(中略)
# User home directories
#Include /private/etc/apache2/extra/httpd-userdir.conf
#(後略)

取消注释之后,启用该行。

#(前略)
LoadModule userdir_module libexec/apache2/mod_userdir.so
#(中略)
# User home directories
Include /private/etc/apache2/extra/httpd-userdir.conf
#(後略)

接下来,我们会编辑httpd-userdir.conf文件。

$ sudo vi /etc/apache2/extra/httpd-userdir.conf
#(前略)
#Include /private/etc/apache2/users/*.conf
#(後略)

去除#号,将该行启用。

#(前略)
Include /private/etc/apache2/users/*.conf
#(後略)

然后,编辑(或创建)[用户名].conf文件。请用登录用户名替换[用户名]。

$ sudo vi /etc/apache2/users/[ユーザ名].conf
<Directory "/Users/[ユーザ名]/Sites/">
AllowOverride All
Options Indexes MultiViews
Options +FollowSymLinks
Require all granted
</Directory>

创建一个HTML文件并尝试从浏览器访问。

我们先创建一个目录,然后创建index.html文件。

$ mkdir ~/Sites
$ vi ~/Sites/index.html
<html><body><h1>Hello World!</h1></body></html>

让我们重新启动Apache。

$ sudo apachectl restart

通过浏览器访问http://localhost/~[用户名]/,如果显示“Hello World!”则表示成功!

【附加注释】

/etc是/private/etc的符号链接。

$ ls -l /etc
(中略) /etc -> private/etc

另外,vi指令是vim指令的符号链接。

$ ls -l $(which vi)
(中略) /usr/bin/vi -> vim

【参考网站】

以下是在中国的本机上构建本地服务器的一些东西。

以下是在Mac上启动本地服务器的方法:
http://qiita.com/shuntaro_tamura/items/bdabcb77926dc92617b1

以下是有关在Mac上启动Apache的说明:
https://qiita.com/macoto/items/08159691170c64f05f7a

广告
将在 10 秒后关闭
bannerAds