概述
原文地址: http://note.rpsh.net/posts/2013/11/27/osx-10-9-apache-server-php-mysql/
http://www.cnblogs.com/yjmyzz/p/3920361.html
-------------------------------------------------------------
1、启动
sudo apachectl start
启动后,访问 http://localhost/ 应该能看到"It works!"的初始页面,如果对初始页面的内容感到好奇,可以打开"/etc/apache2/httpd.conf",197行可以看到如下代码片段:
1 <Directory "/Library/WebServer/Documents"> 2 # 3 # Possible values for the Options directive are "None", "All", 4 # or any combination of: 5 # Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews 6 # 7 # Note that "MultiViews" must be named *explicitly* --- "Options All" 8 # doesn't give it to you. 9 # 10 # The Options directive is both complicated and important. Please see 11 # http://httpd.apache.org/docs/2.2/mod/core.html#options 12 # for more information. 13 # 14 Options Indexes FollowSymLinks MultiViews 15 16 # 17 # AllowOverride controls what directives may be placed in .htaccess files. 18 # It can be "All", "None", or any combination of the keywords: 19 # Options FileInfo AuthConfig Limit 20 # 21 AllowOverride None 22 23 # 24 # Controls who can get stuff from this server. 25 # 26 Order allow,deny 27 Allow from all 28 29 </Directory>
It works的内容,就在/Library/WebServer/Documents/index.html.en这个文件里,这是apache的默认页,相当于windows下IIS的C:inetpubwwwrootiisstart.htm
2、重启/停止
sudo apachectl restart
sudo apachectl stop
文件根目录
系统级的根目录
http://localhosts/
对应的文件目录是:
/Library/WebServer/Documents/
用户级根目录
另一个 Web 根目录默认是 ~/Sites
,10.9 中你需要手动创建这个Sites
目录。
检查这个目录下是否有 username.conf
文件
/etc/apache2/users/
如果没有,则需要新建一个,username
需要是你的账户名字,建议使用终端创建这个文件:
cd /etc/apache2/users
sudo vi username.conf
贴入以下内容,注意修改 username
为你的账户名字
<Directory "/Users/username/Sites/">
Options Indexes MultiViews FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
Require all granted
</Directory>
这个文件的权限应该是:
-rw-r--r-- 1 root wheel 298 Jun 28 16:47 username.conf
如果不是,请修改
sudo chmod 644 username.conf
编辑 /etc/apache2/httpd.conf
文件,删除下列这些代码前的注释符号: #
Include /private/etc/apache2/extra/httpd-userdir.conf
LoadModule authz_core_module libexec/apache2/mod_authz_core.so
LoadModule authz_host_module libexec/apache2/mod_authz_host.so
LoadModule userdir_module libexec/apache2/mod_userdir.so
编辑 /etc/apache2/extra/httpd-userdir.conf
文件,删除下列这些代码前的注释符号: #
Include /private/etc/apache2/users/*.conf
重启 Apache
sudo apachectl restart
这时,这个网址应该已经可以用了:
http://localhost/~username/
3、创建个人站点目录
cd ~/
mkdir Sites
echo "hello" >> index.html
sudo apachectl restart
然后再访问 http://localhost/~jimmy/ 应该就能看到"hello"的个人目录初始页面(注:~jimmy需换成~你的用户名)
如果失败,请检查"/etc/apache2/users"目录下,是否有名为“jimmy.conf”的配置文件(同样:jimmy需换成你的用户名),如果没有,手动创建一个,内容参考下面:
1 <Directory "/Users/jimmy/Sites/"> 2 Options FollowSymLinks Indexes MultiViews 3 AllowOverride All 4 Order allow,deny 5 Allow from all 6 </Directory>
如果好奇目录名为什么是Sites? 可以查看"/etc/apache2/extra/httpd-userdir.conf"
1 # Settings for user home directories 2 # 3 # Required module: mod_userdir 4 5 # 6 # UserDir: The name of the directory that is appended onto a user's home 7 # directory if a ~user request is received. Note that you must also set 8 # the default access control for these directories, as in the example below. 9 # 10 UserDir Sites 11 12 # 13 # Users might not be in /Users/*/Sites, so use user-specific config files. 14 # 15 Include /private/etc/apache2/users/*.conf 16 <IfModule bonjour_module> 17 RegisterUserSite customized-users 18 </IfModule>
第10行就是答案
4、启用虚拟主机
默认情况下,apache的虚拟主机功能是关闭的,在“/etc/apache2/httpd.conf”中找到下面这行:
#Include /private/etc/apache2/extra/httpd-vhosts.conf
将前面的#去掉,然后再打开“/etc/apache2/extra/httpd-vhosts.conf”,内容修改成类似下面的样子:
1 NameVirtualHost *:80 2 3 <VirtualHost *:80> 4 DocumentRoot "/Users/jimmy/Sites" 5 ServerName www.yjmyzz.com 6 ErrorLog "/Users/jimmy/Sites/log/error.log" 7 CustomLog "/Users/jimmy/Sites/log/access.log" common 8 <Directory /> 9 Options Indexes FollowSymLinks MultiViews 10 AllowOverride None 11 Order deny,allow 12 Allow from all 13 </Directory> 14 </VirtualHost>
注:
a) /Users/jimmy/Sites/log/ 日志文件目录,必须存在,否则apache启动将失败,而且不会有任何错误提示
b) 虚拟主机的站点根目录,建议放在~/Sites/下,否则mac环境中会报类似“无权限访问”的错误。
这段配置绑定了一个不存在的域名www.yjmyzz.com到站点http://localhost/~jimmy/,为了验证域名绑定的效果,手动修改下hosts文件
sudo vi /etc/hosts 以管理员身份打开hosts文件,追加一行
127.0.0.1 www.yjmyzz.com
保存退出,重启apache,再次浏览 http://www.yjmyzz.com 应该ok了,看到的内容跟http://localhost/~jimmy/ 一样
--------------------------------------------------------
在终端中运行“sudo vi /etc/apache2/httpd.conf”,打开Apache的配置文件。
找到“#LoadModule php5_module libexec/apache2/libphp5.so”,把前面的#号去掉,保存并退出vi(在命令行输入:w!:q)。
这样就能在自带的apache中运行php代码了。
--------------------------------------------
最后附两篇apache和tomcat的区别:
tomcat对静态资源的请求效率太低,一般使用ngxin/lighttpd(apache)做前端,只是把jsp的请求转发给tomcat。
http://blog.csdn.net/naughty610/article/details/7414991
---------------------------------------------
因为我写jsp,所以必须还要装tomcat。直接从官网下了binary distribution(直接解压就可以用)
我把它放到了~目录下。
mrgaodeMacBook-Pro:Library gao$ cd ~
mrgaodeMacBook-Pro:~ gao$ ls
Applications
IdeaProjects
Public
Desktop
Library
Sites
Documents
Movies
apache-tomcat-8.0.28
Downloads
Music
Dropbox
Pictures
启动tomcat只要startup.sh即可。
mrgaodeMacBook-Pro:~ gao$ cd apache-tomcat-8.0.28
mrgaodeMacBook-Pro:apache-tomcat-8.0.28 gao$ ls
LICENSE
RUNNING.txt lib
webapps
NOTICE
bin
logs
work
RELEASE-NOTES conf
temp
mrgaodeMacBook-Pro:apache-tomcat-8.0.28 gao$ cd bin
mrgaodeMacBook-Pro:bin gao$ ls
bootstrap.jar
setclasspath.sh
catalina-tasks.xml
shutdown.bat
catalina.bat
shutdown.sh
catalina.sh
startup.bat
commons-daemon-native.tar.gz startup.sh
commons-daemon.jar
tomcat-juli.jar
configtest.bat
tomcat-native.tar.gz
configtest.sh
tool-wrapper.bat
daemon.sh
tool-wrapper.sh
digest.bat
version.bat
digest.sh
version.sh
setclasspath.bat
mrgaodeMacBook-Pro:bin gao$ startup.sh
Using CATALINA_BASE:
/Users/gao/apache-tomcat-8.0.28
Using CATALINA_HOME:
/Users/gao/apache-tomcat-8.0.28
Using CATALINA_TMPDIR: /Users/gao/apache-tomcat-8.0.28/temp
Using JRE_HOME:
/Library/Java/JavaVirtualMachines/jdk1.8.0_60.jdk/Contents/Home
Using CLASSPATH:
/Users/gao/apache-tomcat-8.0.28/bin/bootstrap.jar:/Users/gao/apache-tomcat-8.0.28/bin/tomcat-juli.jar
Tomcat started.
打开http://localhost:8080/ 成功。
$shutdown.sh 即可关闭tomcat。
然后去IntelliJ IDEA中
Preferences-->Plugins-->看Tomcat是否禁用
Preferences--》Buildxxxxx-->Application Servers-->添加Tomcat,将刚刚装的tomcat放进去即可。
最后
以上就是健忘棒球为你收集整理的MAC配置apache的全部内容,希望文章能够帮你解决MAC配置apache所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复