Mac Yosemite 配置Apache

div#cpmenu {height:200px;float:left;}
div#cpcontent {height:200px;width:150px;float:left;}

文章作者:松阳

原文链接:http://blog.csdn.net/fansongy/article/details/43449337


基本知识

下面是Apache的一些基本设置 参考这篇文章

打开“终端(terminal)”,输入

sudo apachectl -v

可显示Apache的版本

接着输入 sudo apachectl start 可以启动Apache。打开Safari浏览器地址栏输入 “http://localhost”,可以看到内容为“It works!”的页面。其位于“/Library(资源库)/WebServer/Documents/”下,这就是Apache的默认根目录。

Apache的安装目录在:/etc/apache2/,etc默认是隐藏的。有三种方式查看:

  1. dock下右键Finder,选择"前往文件夹",输入"/etc"
  2. 在finder下----》前往---》前往文件夹,然后输入/etc
  3. 可以在terminal 输入 "open /etc"

设置虚拟主机

  1. 在终端运行“sudo vi /etc/apache2/httpd.conf”,打开Apche的配置文件
  2. 在httpd.conf中找到“#Include /private/etc/apache2/extra/httpd-vhosts.conf”,去掉前面的“#”,保存并退出。
  3. 运行“sudo apachectl restart”,重启Apache后就开启了虚拟主机配置功能。
  4. 运行“sudo vi /etc/apache2/extra/httpd-vhosts.conf”,就打开了配置虚拟主机文件httpd-vhost.conf,配置虚拟主机了。需要注意的是该文件默认开启了两个作为例子的虚拟主机:
<VirtualHost *:80>
     ServerAdmin [email protected]
     DocumentRoot "/usr/docs/dummy-host.example.com"
     ServerName dummy-host.example.com
     ErrorLog "/private/var/log/apache2/dummy-host.example.com-error_log"
     CustomLog "/private/var/log/apache2/dummy-host.example.com-access_log" common
</VirtualHost>?
?<VirtualHost *:80>
     ServerAdmin [email protected]
     DocumentRoot "/usr/docs/dummy-host2.example.com"
     ServerName dummy-host2.example.com
     ErrorLog "/private/var/log/apache2/dummy-host2.example.com-error_log"
     CustomLog "/private/var/log/apache2/dummy-host2.example.com-access_log" common
</VirtualHost>

而实际上,这两个虚拟主机是不存在的,在没有配置任何其他虚拟主机时,可能会导致访问localhost时出现如下提示.

Forbidden
You don‘t have permission to access /index.php on this server

最简单的办法就是在它们每行前面加上#,注释掉就好了,这样既能参考又不导致其他问题。

增加如下配置

<VirtualHost *:80>
    DocumentRoot "/Library/WebServer/Documents"
    ServerName localhost
    ErrorLog "/private/var/log/apache2/localhost-error_log"
    CustomLog "/private/var/log/apache2/localhost-access_log" common
</VirtualHost> ? 
<VirtualHost *:80>
    DocumentRoot "/Users/fansy/Sites"
    ServerName mysites
    ErrorLog "/private/var/log/apache2/sites-error_log"
    CustomLog "/private/var/log/apache2/sites-access_log" common
    <Directory />
        Options Indexes FollowSymLinks MultiViews
        AllowOverride None
        Order deny,allow
        Allow from all
    </Directory>
</VirtualHost>

保存退出,并重启Apache。

运行sudo vi /etc/hosts,打开hosts配置文件,加入127.0.0.1 mysites,这样就可以配置完成sites虚拟主机了,可以访问http://mysites了,在10.8之前Mac OS X版本其内容和“http://localhost/~[用户名]”完全一致。

注意,记录log的“ErrorLog "/private/var/log/apache2/sites-error_log"”也可以删掉,但记录日志其实是一个好习惯,在出现问题时可以帮助我们判断。如果保留这些log代码,一定log文件路径都是存在的,如果随便修改一个不存在的,会导致Apache无法服务而没有错误提示,这个比较恶心。

Forbidden

经过了上面的设置后 依旧报错 :

Forbidden
You don‘t have permission to access / on this server.

查询原因是 Yosemite 权限策略更改了。需要更改一些配置,我参考了这篇文章

核心就是打开libphp5.somod_userdir.so这两个库的加载,启用httpd-userdir.conf配置。当然我们刚才配置好的虚拟主机也不耽误,能够一起使用。

时间: 2024-11-02 17:51:11

Mac Yosemite 配置Apache的相关文章

Mac下配置apache

一.前言 今天遇到问题,怎么配置apache在Mac上,原来Mac自带apache,只需要自己开启配置一下就行了. 二.步骤: 1.修改apache的http_conf文件 打开finder前往/private/etc/apache2,在这个文件加下有一个http.conf用文本编辑器打开. 修改第一处:查找php.得到如下结果 #LoadModule php5_module libexec/apache2/libphp5.so 去掉前面的#号. 修改第二处:查找documentRoot.会找到

Mac下配置Apache,PHP

注:如果觉得终端下编辑太麻烦,也可以直接将文件拖出来手动编辑后在放回原文件夹替换即可 1.启用Apache: 在Mac下打开终端,输入“sudo apachectl start”(不包含引号,下同) 回车后输入自己的电脑密码即可启动Apache 2.检测Apache: 在终端中输入“sudo apachectl -v”,即可看到Apache的版本号 或在浏览器中输入“localhost”可以看到“It Works!”字样 这是检测Apache是否成功启用的两种方法 3.启用PHP: 一.修改ht

mac下配置Apache虚拟域名方案,以及遇到的坑

  1. 配置Apache虚拟域名 1.执行    sudo vi /etc/apache2/httpd.conf 开始配置httpd.conf 的文件; //配置listen 80端口(默认配置),此处可以修改监听端口,例如Listen 81   2.打开相应 LoadModule 相应LoadModule userdir_module libexec/apache2/mod_userdir.so //允许用户从自己的主目录中提供页面(使用"/~username") LoadModu

Mac 中配置Apache

使用的mac版本是10.10.1,mac自带的Apache环境 分为两部分: 1.启动Apache 2.设置虚拟主机 启动Apache 打开终端, >>sudo apachectl -v,如有机器密码会需要输入密码. >>sudo apachectl start ,即启动Apache 验证是否开启Apache,在浏览器中输入“http://localhost”,如页面显示“It works”,即开启成功.其位于 /Library/WebServer/Documents下. Apac

在mac上配置Apache服务器

Apache服务器是mac上自带的服务器,Apache的安装目录在:/etc/apache2/,etc默认是隐藏的. 查看方式有: 1.dock下右键Finder,选择"前往文件夹",输入"/etc". 2.在终端输入"open /etc" . 打开Apache服务器的方式: sudo apachectl start .打开后,在Safari浏览器地址栏输入 “http://localhost”,可以看到内容为“It works!”的页面. 关闭

在mac中配置apache+php5.3+mysql的环境,修改hosts

众所周知,mac中有自带的apache 以下是关于apache的几个命令 sudo apachectl start       开启 sudo apachectl restart    重启 sudo apachectl stop        停止 sudo apachectl -v           查看本机apache版本 以下是apache的配置文件的路径 /etc/apache2/httpd.conf 理论上,在终端输入 sudo apachectl start,输入密码.在浏览器中

Mac下配置Apache服务

这篇文章主要是针对Mac用户,第一次搭建本地开发环境的同学,已经搭建过的同学可以忽略. Mac自带的Apache还是XAMPP? That is a question. 其实自带的apache也够用了,XAMPP可能更加方便些.比如本地服务重启的时候,不需要在终端里面敲sudo apachectl restart. 当然,可能还有一些其他的问题,比如我之前在使用CI框架配置rewrite的时候,自带的apache没有配置成功,然后换成XAMPP就可以了.而且,安装XAMPP,不会影响自带的apa

Mac下配置Apache服务器

1> 打开服务器配置目录 cd /etc/apache2/ 2> 查看当前目录下内容 ls 3> 修改服务器根路径 {     sudo vim httpd.conf  //进入服务器配置文件         /DocumentRoot 回车 //查找服务器默认根路径         将默认根路径 DocumentRoot "/Library/WebServer/Documents" 注释掉;         在注释掉的根路径下面一行增加新的根路径     Docum

Mac下配置Apache + Php + Mysql环境

Apache与PHP的配置 Mavericks同以往的OSX一样自带了apache2.2.24和php5.4.17,但默认情况下没有开启,打开终端 sudo apachectl start 这时在浏览器中输入localhost应该就会出现apache标准的It Works!下面开启php,修改apache配置文件 sudo vim /etc/apache2/httpd.conf 找到#LoadModule php5_module libexec/apache2/libphp5.so,去掉前面的#