MAC配置apache

原文地址: 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:\inetpub\wwwroot\iisstart.htm


2、重启/停止

sudo apachectl restart

sudo apachectl stop


文件根目录
系统级的根目录

http://localhosts/

对应的文件目录是:

/Library/WebServer/Documents/

用户级根目录

另一个 Web 根目录默认是 ~/Sites ,10.9 中你需要手动创建这个Sites目录。

image

检查这个目录下是否有 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放进去即可。





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值