我们都知道要在 windows 下使用 http 访问本机的网页,只需要把 IIS 启用即可,具体的配置一股脑全钩上,不会有什么大问题。但是自从花了大价钱买了 MAC 后,突然发现自己局部黯不会用电脑了,瞬间人生是无比绝望啊。
今天需要在 MAC 上把 http 服务打开,博主实在是不想安装 apache。所以特地 goggle 了下 MAC 有没有自带的 http 服务。功夫不负有心人,下面来向大家介绍如何启用 MAC 的 http 服务。
启用http
其实很简单,只要把 MAC 中的apachectl 命令启用即可
- sudo apachectl start 启动
- sudo apachectl restart " 重启
- sudo apachectl stop " 停止
启动 apachectl 后,在浏览器中输入 localhost 可以看到 ‘It Work!’ 的放回界面,这时说明 apachectl 已成功启动
切换 localhost 默认的根目录
虽然启动了 apachectl ,但是新的疑惑随之而来:
- localhost 的文件根路径在哪里?
- 应该如何把它设为我在文稿中的目录 "/Users/user/Documents/web"?
解决方案:通过修改 apachectl 的配置文件能够将根路径设置成我们想要的路径
1. Finder 》前往文件夹 》/etc/apache2
2. sudo vim httpd.conf " 打开配置文件
3. 查找 DocumentRoot,将对应的默认路径修改成自己想要的路径
-DocumentRoot "/Library/WebServer/Documents"
+DocumentRoot "your document path"
-<Directory "/Library/WebServer/Documents">
+<Directory "your document path">
4. 然后重新启动 apachectl , 根路径就切换了。
遭遇错误:403 Forbidden
虽然根目录已经切换完成,但是当访问目录文件的时候,老是提示403。这说明配置文件还没有完全配置好。查找了半天,发现国内的用户写的解决方案都一知半解的,不是很清楚,照着做也往往无法解决问题。于是 Google 了下,果然外事不决就应该用 Google。
在 stackoverflow 网站找到了正确的解决方案,详细解决方案 根据步骤即可完美解决。在 /etc/apache2/users/ 中添加一个当前登陆账户的同名文件 youname.conf,并添加如下代码
<Directory "you document path">
AllowOverride All
Options Indexes MultiViews FollowSymLinks
Require all granted
</Directory>
然后
chmod 755 'you document path'