Apache 安装与配置

安装Apache

1、下载apache软件http://www.apache.org

2、安装

以管理员身份进行安装

3、设置主机名与域名

4、选择安装类型

5、自定义安装路径

6、开始安装

7、安装结束

8、测试:

在浏览器的地址栏输入localhost

Apache目录结构:

bin目录:

Apache的主配置文件

httpd.conf是主配置文件,位于conf目录中


SeverRoot        

服务器根目录(apache的安装目录)

示例:

    ServerRoot "D:/wamp1027"

 

Listen 80

监听端口

示例:

    Listen 80

设置多个监听端口

    Listen 80

    Listen 5000

 

加载功能模块

 

user        用户所属的组名

示例:

    User daemon

 

group        组名

示例:

    Group daemon

ServerAdmin

管理员邮箱

示例:

ServerAdmin 20151027@itcast.net

 

ServerName

    设置域名(主机名)

示例:

#ServerName localhost:80

 

DocumentRoot

    站点根目录,主要用于在内部建议域名与目录的映射关系

示例:

DocumentRoot "D:/wamp1027/htdocs"

 

域名的作用:

1、对外提供访问(ISP 的DNS服务器完成功能)

2、对内建立域名与目录的映射关系(只要在配置文件中使用servername与documentroot选项进行配置即可)

 

对目录的相关设置

<Directory "站点根目录">

    #目录相关配置

</Directory>

目录相关配置:

默认首页

DirectoryIndex        主要用于当访问的请求仅指定了域名没有指定具体文件时,返回的首页文件

示例:

    DirectoryIndex 首页1 首页2

 

是否允许列出目录结构

Options Indexes

作用:当所请求的首页文件不存在时,是否允许列出目录结构,非常不安全,网站上线后一定关闭(不书写此项)

 

AllowOverride

主要用于设置是否开启外部配置文件(.htaccess)

 

对目录权限设置

order

形式1:

    order deny,allow

作用:如果没有明确的拒绝则全部允许

形式2:

    order allow,deny

作用:如果没有明确的允许则全部拒绝

具休拒绝项与允许项使用deny与allow进行配置

示例1:

    order deny,allow

    deny from 192.168.10.11

    allow from all

    除了192.168.10.11拒绝外,其余全部允许(与deny与allow具体项的顺序无关)

 

示例2:

    order allow,deny

    allow from 192.168.10.11

    deny from all

    只允许192.168.10.11访问,其余全部拒绝(与deny与allow具体项的顺序无关)

 

虚拟主机的配置:

扩展配置文件httpd-vhosts.conf,位于conf目录下的extra目录

NameVirtualHost        开启基于域名的虚拟主机

NameVirtualHost *:80    

虚拟主机使用:

<Virtualhost *:80>

    #主机配置项

</Virtualhost>

 

基于IP的主机

需求:

    有个公司有一台服务器,有三个网卡

网卡1:192.168.10.11        www.fist.com        d:/php_folder/20151027/20151201/first

网卡2:192.168.10.22        www.second.com

    d:/php_folder/20151027/20151201/second

网卡3:192.168.10.33        www.third.com

    d:/php_folder/20151027/20151201/second

配置步骤:

1、使用host文件模拟DNS服务器

2、在主配置文件中开启对扩展配置文件的加载

 

在扩展 配置文件中创建虚拟主机

 

基于域名的配置

需求:A公司有一台服务器,只有网卡接口

配置二个主机

192.168.20.11    www.one.com        d:/php_folder/20151027/20151201/one

192.168.20.11    www.two.com        d:/php_folder/20151027/20151201/two

示例:

 

基于端口的配置

需求:

    A公司有一个服务器

    一个固定IP:192.168.30.11

    对于所有的普通用访问时使用www.234.com域名通过80端口进行操作

    要求所有的管理员对后台系统的管理使用5000端口

示例:

监听端口

host文件

虚拟主机配置

 

AllowOverride

    用于开启外部配置文件.htaccess

.htaccess主要作用是重定向、防盗链、自定义错误信息提示页面

.htaccess文件的修改不需要重新启动apache

.htaccess文件需要使用编辑器另存的方法创建

.htaccess文件只对当前目录生效

 

一、自定义错误页面

示例1:

第1步:开启外部配置文件.htaccess文件

第2步:在.htaccess文件中设置自定义错误信息页面

示例2:

第1步:

第2步:

    在根目录下创建一个image资源目录,在此目录内创建一个.htaccess文件,内容如下:

禁止访问此目录内所有的文件

第3步:

    

二、重定向

    当访问站点根目录内的A目录内的文件时,自动转身B目录(或另一个主机下的目录)

 

 

Apache的工作模式

    Apache默认只支持HTML文件,通过模块(插件)可以支持PHP,还可以与Tomcat连通来支持JSP。

    Apache所有的功能的扩展都是模块的形式实现,模块可以理解为插件。

图解:

示例:

Apache实现用户的认证

第一步:开启以下功能模块

第二步:

    使用htpasswd.exe文件创建密码文件,运行环境为cmd

htpasswd语法:

htpasswd -c 密码文件 用户名

    作用是用于重新创建密码文件,

示例:

第三步:

    设置认证方式

语法:

    AuthType Basic

第四步:

    设置realm,作用就是为认证的文件夹起一个显示名,当用户访问时显示给用户看。

语法:

    AuthName '提示信息'

示例:

第五步:

    设置认证用户密码文件

语法:

    AuthUserFile    '密码文件所在的目录'

示例:

 

第六步:设置验证用户名

 

对多个用户进行认证

require user 用户1 用户2 用户3

对所有的用户进行认证

require valid-user

添加认证用户

语法:

    htpasswd '用户密码文件' 用户名

示例:

 

删除用户

语法:

    htpasswd -D '用户密码文件' 用户名

完整代码示例:

posted @ 2016-04-05 11:17  尼农小道  阅读(403)  评论(0编辑  收藏  举报