下面是Apache的一些基本设置 参考这篇文章
打开“终端(terminal)”,输入
sudo apachectl -v
可显示Apache的版本
接着输入 sudo apachectl start
可以启动Apache。打开Safari浏览器地址栏输入 “http://localhost”,可以看到内容为“It works!”的页面。其位于“/Library(资源库)/WebServer/Documents/”下,这就是Apache的默认根目录。
Apache的安装目录在:/etc/apache2/,etc默认是隐藏的。有三种方式查看:
<VirtualHost *:80> ServerAdmin webmaster@dummy-host.example.com 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 webmaster@dummy-host2.example.com 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 You don‘t have permission to access / on this server.
查询原因是 Yosemite 权限策略更改了。需要更改一些配置,我参考了这篇文章
核心就是打开libphp5.so
和mod_userdir.so
这两个库的加载,启用httpd-userdir.conf
配置。当然我们刚才配置好的虚拟主机也不耽误,能够一起使用。
原文地址:http://blog.csdn.net/fansongy/article/details/43449337