详解Mac自带apache配置

 更新时间:2017年06月03日 08:57:46   作者:0h1in9e  
Mac自身带了apache,可以直接用来搭建本地web容器,配置过程基本同于windows,但有几个点需要注意一下(避免踩坑)

Mac自身带了apache,可以直接用来搭建本地web容器,配置过程基本同于windows,但有几个点需要注意一下(避免踩坑)

apache

sudo apachectl start[/restart/stop] #开启等

sudo apachectl -v #查看版本

sudo /usr/sbin/httpd -k start #当配置文件出错时,可通过这个方式查看具体出错位置

使用前切记开启一个选项

Mac下apache默认不开启php,需要手动开启

sudo vi /etc/apache2/httpd.conf

LoadModule php5_module libexec/apache2/libphp5.so

Apache修改web目录

默认目录为:

/Library/WebServer/Documents

而往往这个目录用起来是不方便的,一是权限问题,毕竟我们不想每做一次修改,都要带个sudo;二是Finder中打开不方便。所以需要修改web目录。

sudo vi /etc/apache2/httpd.conf
237 DocumentRoot "/Users/username/wwwroot"
238 <Directory "/Users/username/wwwroot">

配置vhost

先开启vhost扩展(去掉注释#即可)

sudo vi /etc/apache2/httpd.conf

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

编辑vhost文件

sudo vi /etc/apache2/extra/httpd-vhost.conf
<VirtualHost *:80>
  ServerAdmin webmaster@dummy-host.example.com
  DocumentRoot "/Users/username/wwwroot"
  ServerName localhost
  ErrorLog "/private/var/log/apache2/local-error_log"
  CustomLog "/private/var/log/apache2/local-access_log" common
</VirtualHost>

<VirtualHost *:80>
  ServerAdmin webmaster@dummy-host2.example.com
  DocumentRoot "/Volumes/FAT/bugs"
  ServerName wooyun.sb
  ErrorLog "/private/var/log/apache2/wooyun-error_log"
  CustomLog "/private/var/log/apache2/wooyun-access_log" common
  <Directory "/Volumes/FAT/bugs">
        Options Indexes FollowSymLinks MultiViews
        AllowOverride None
        Require all granted
  </Directory>
</VirtualHost>

只允许本机访问

为了安全期间,我打算将apache服务配置成只允许本机访问。网上方法不太适用,经过多次尝试,以下方法可行:

<Directory "/Users/username/sites">
  Options Indexes FollowSymLinks MultiViews
  AllowOverride None
  Require all granted
  # add 访问控制
  Order Deny,Allow  
  Deny from all  #网上很多给出的方法不加这里,只有allow那里,实测并不适用,必须加上这一行~
  Allow from 127.0.0.1  
</Directory>

一些问题处理

1、403 Forbidden

当日志文件log配置出错事,会出现403,处理方法是/var/log/apache2/清空这里边的日志。

也有可能是没有开启PHP扩展。

2、Vhost配置时出现403 Forbidden

注意需要配置文件加入<Directory……部分,如上。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • Apache中配置支持CORS(跨域资源共享)实例

    Apache中配置支持CORS(跨域资源共享)实例

    这篇文章主要介绍了Apache中配置支持CORS(跨域资源共享)实例,本文给出了一个完整的apache、PHP、JavaScript结合实现的跨域资源共享实例,需要的朋友可以参考下
    2015-01-01
  • Linux磁盘设备与LVM管理命令示例详解

    Linux磁盘设备与LVM管理命令示例详解

    这篇文章主要给大家介绍了关于Linux磁盘设备与LVM管理命令的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Linux系统具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-08-08
  • Linux一键安装xdd plus机器人

    Linux一键安装xdd plus机器人

    大家好,本篇文章主要讲的是Linux一键安装xdd plus机器人,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下,方便下次浏览
    2022-01-01
  • 让你知道什么是 SVN

    让你知道什么是 SVN

    subversion(简称svn)是近年来崛起的版本管理工具,是cvs的接班人。目前,绝大多数开源软件都使用svn作为代码版本管理软件。
    2009-03-03
  • ubuntu 16.04下不能启动Steam的解决方法

    ubuntu 16.04下不能启动Steam的解决方法

    这篇文章主要给大家介绍了关于在ubuntu 16.04下不能启动Steam的解决方法,文中介绍的非常详细,对大家具有一定的参考学习价值,需要的朋友们下面来一起看看吧。
    2017-06-06
  • 详解Linux中几个获取硬件详细信息的命令

    详解Linux中几个获取硬件详细信息的命令

    这篇文章主要介绍了详解Linux中几个获取硬件详细信息的命令,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-03-03
  • 安装ubuntu18.04报:failed to load ldlinux.c32的问题及解决步骤

    安装ubuntu18.04报:failed to load ldlinux.c32的问题及解决步骤

    这篇文章主要介绍了安装ubuntu18.04报:failed to load ldlinux.c32的问题,本文通过图文并茂的形式给大家分享解决方法,需要的朋友可以参考下
    2020-08-08
  • 解析linux或android添加文件系统的属性接口的方法

    解析linux或android添加文件系统的属性接口的方法

    这篇文章主要介绍了linux或android添加文件系统的属性接口的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-03-03
  • 本地与linux互传文件的方式详解

    本地与linux互传文件的方式详解

    实现本地与Linux服务器文件互传的常用方式:scp命令、sftp命令、lrzsz程序,xftp软件,下面就跟随小编一起来学习一下如何具体操作的吧
    2023-08-08
  • linux网络知识详解:iptables 规则介绍

    linux网络知识详解:iptables 规则介绍

    这篇文章主要介绍了linux网络知识详解:iptables 规则介绍,需要的朋友可以参考下
    2024-02-02

最新评论