mac 10.9.4下配置apache

mac 10.9.x已经自带了apache,可按如下步骤开启:

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>

View Code

It works的内容,就在/Library/WebServer/Documents/index.html.en这个文件里,这是apache的默认页,相当于windows下IIS的C:\inetpub\wwwroot\iisstart.htm

 

另外,如果要监听多端口,可以修改http.conf,类似下面这样:

Listen 80
Listen 81

这样就同时监听了80,81二个端口

 

2、重启/停止

sudo apachectl restart

sudo apachectl stop

 

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>

View Code

如果好奇目录名为什么是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>

View Code

第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> 

View Code

注:

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/ 一样

tips: 如果站点根目录,想放到其它位置,在httpd.conf中找到 

1 <Directory />
2     Options FollowSymLinks
3     AllowOverride None
4     Order deny,allow
5     Deny from all
6 </Directory

把4,5行删除掉就行了

 

5、URL转发

先打开httpd.conf,确保下面这二行没有被注释掉:

1 LoadModule proxy_module libexec/apache2/mod_proxy.so
2 LoadModule proxy_http_module libexec/apache2/mod_proxy_http.so

然后在httpd.conf最后加上

1 ProxyPass /HelloApp http://localhost:8080/HelloApp/
2 ProxyPassReverse /HelloApp  http://localhost:8080/HelloApp/

这样访问 http://localhost/HelloApp、http://ip/HelloApp、http://www.yjmyzz.com/HellpApp  都相当于访问 http://localhost:8080/HelloApp

 

6、端口转发

假如服务器上有一个应用 http://x.x.x.x:8080/ ,如果想通过类似 http://www.yjmyzz.com 的域名来直接访问,就需要做端口转发,仍然打开httpd.conf

1 LoadModule proxy_connect_module modules/mod_proxy_connect.so
2 LoadModule proxy_ftp_module modules/mod_proxy_ftp.so

在"5、URL转发"的基础上,再打开这二项

然后修改extra/httpd-vhosts.conf

 1 NameVirtualHost *:80
 2
 3 <VirtualHost *:80>
 4         ProxyPreserveHost On
 5         ServerName www.yjmyzz.com
 6
 7         ProxyPass / http://www.yjmyzz.com:8000/
 8         ProxyPassReverse / http://www.yjmyzz.com:8000/
 9
10         ServerAdmin webmaster@localhost
11 </VirtualHost>

View Code

这样就相当于把 80端口转发到8080端口上了

时间: 2024-11-02 04:47:45

mac 10.9.4下配置apache的相关文章

windows 下配置 apache 2.2.4+php 5.2.5+mysql 5.0.41+ze

windows 下配置 apache 2.2.4+php 5.2.5+mysql 5.0.41+zend 3.3.0最新配置 1,php5.2.5 for windows 2, mysql-5.0.41 for windows 3, apache_2.2.4 For Windows 4, ZendOptimizer-3.0.2-Windows-i386 5,phpMyAdmin 2.9.X 以上所有软件都可以在天空软件站找得到.或者在官方网站找. 配置方法:下载以上软件,然后一.使用软件:apa

Mac下配置apache

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

Linux下配置Apache httpd

httpd是Apache超文本传输协议(HTTP)服务器的主程序.它被设计为一个独立运行的后台进程,它会建立一个处理请求的子进程或线程的池对外提供服务.httpd支持基于 虚拟主机,以及基于HOST.IP.PORT实现虚拟主机,反向代理,负载均衡,路径别名,用户认证,basic,支持第三方模块等众多特性.本文主要描述了Linux下httpd(2.2版本)的相关基本配置. 1.配置文件概述 配置文件,主要分为3个部分: # grep "Section" /etc/httpd/conf/h

Linux下配置apache与Tomcat连接

Apache http server与tomcat同属于apache基金会,两者都可以提供Web服务,只不过两者的侧重点不同.http server侧重用作web服务器,而tomcat则侧重于作为轻量级的应用服务器.同时,两者也可以结合 起来使用,即可以将动态请求通过http server转发至后端的tomcat来完成,http server只处理静态请求.本文描述了如何配置apache与tomcat连接. 一.Tomcat连接器架构及协议 1.Tomcat连接器架构 基于Apache做为Tom

windows下配置Apache+PHP+MySQL绿色移动版_win服务器

Apache 下载地址 http://httpd.apache.org/ 我下载的是 Apache HTTP Server (httpd) 2.2.17 点击 download ,选择   httpd-2.2.17-win32-x86-openssl-0.9.8o.msi 当然,你也可以下载源代码 httpd-2.2.17-win32-src.zip ,不过需要自己编译. (我们第一次选择安装版,然后配置好,以后就可以在任何地方使用了) PHP 下载地址 http://windows.php.n

Mac OS X上安装配置apache服务器

说明:Mac在安装完成Mac系统的时候它已经自带了apache服务器,接下来就是配置和将它启动运行了.那么接下来要做的事情就是: 1.配置apache的配置文件 2.设置虚拟主机 启动并查看apache 打开终端输入以下命令: $sudo apachectl start $sudo apachectl -v 配置apache主配置文件 apache的主配置文件在路径/etc/apache2/下 先将原来的文件备份 $sudo cp /etc/apache2/httpd.conf /etc/apa

在Windows2000ADV下配置Apache+PHP5+MySql5

以前为了图方便,是用套件包.版本很久了,是apache1.X.Mysql4.X,PHP4.X的.现在已经过时很久了..而且漏洞一大堆,幸好我只是在本地使用...不过为了追潮流,就鸟枪换炮咯.. 所用软件版本: mysql-5.0.4-beta-win32 apache_2.0.54-win32-x86-no_ssl php-5.0.3-Win32 phpMyAdmin-2.6.2-rc1 ZendOptimizerWindows-i386 以上软件可以到各大下载网站下载.或者直接登陆官方网站下载

解析阿里云ubuntu12.04环境下配置Apache+PHP+PHPmyadmin+MYsql

此教程中使用的相关IP等设置,在你的环境中要做相应修改. 使用之前更新apt-get,因为服务器基本上是一个裸系统 apt-get update; apt-get upgrade;1 我们使用root账户进行安装,首先切换到root账户,输入命令:sudo su 2 安装 MySQL 5输入命令: apt-get install mysql-server mysql-client 安装过程中需要设置root账户密码,系统会作以下提示: New password for the MySQL "ro

解析阿里云ubuntu12.04环境下配置Apache+PHP+PHPmyadmin+MYsql_php技巧

此教程中使用的相关IP等设置,在你的环境中要做相应修改.使用之前更新apt-get,因为服务器基本上是一个裸系统apt-get update;apt-get upgrade;1 我们使用root账户进行安装,首先切换到root账户,输入命令:sudo su 2 安装 MySQL 5输入命令:apt-get install mysql-server mysql-client安装过程中需要设置root账户密码,系统会作以下提示:New password for the MySQL "root&quo