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 '用户密码文件' 用户名

完整代码示例:


Apache 安装与配置的更多相关文章
- 基于Ubuntu Server 16.04 LTS版本安装和部署Django之(二):Apache安装和配置
基于Ubuntu Server 16.04 LTS版本安装和部署Django之(一):安装Python3-pip和Django 基于Ubuntu Server 16.04 LTS版本安装和部署Djan ...
- [转]:Ubuntu 下Apache安装和配置
[转]:Ubuntu 下Apache安装和配置_服务器应用_Linux公社-Linux系统门户网站 https://www.linuxidc.com/Linux/2013-06/85827.htm ...
- Apache安装及配置ssl
目录 1.windows安装 软件准备 安装apache 开启ssl(Https访问) 打开httpd.conf,解除下面配置的注释 查看ssl模块使用哪一个配置文件 配置https虚拟主机 简单配置 ...
- apache安装mod_deflate配置支持gzip
apache 配置支持gzip apache使用gzip压缩能够大幅提高网站访问速度并节省网络流量,在网页响应头信息中可以判断是否支持压缩. HTTP/1.1 200 OK Date: Wed, 14 ...
- Ubuntu 下Apache安装和配置
在Ubuntu上安装Apache,有两种方式:1 使用开发包的打包服务,例如使用apt-get命令:2 从源码构建Apache.本文章将详细描述这两种不同的安装方式. 方法一:使用开发包的打包服务—— ...
- (2)apache安装、配置及使用
一.apache安装 假设我们我们的安装路径是 C:\Apache2.2 运行软件 如果是本地学习使用 第二行服务名localhost 其他随便 一个自动安装,一个自定义安装,没有什么特别重要的,一直 ...
- apache 安装及配置
近期想用apache运行网站,在网上查询windows 版本的中文说明文档有特别少,所以将学习到的在这里做个笔记,以便日后学习以及大家相互交流. 相关文档:http://httpd.apache.or ...
- Apache 安装与配置(WIN10)
本地坏境:windows 10 Pro 1709 Apache版本:httpd-2.4.32-Win64-VC15 Apache下载地址:https://www.apachelounge.com/do ...
- Ubuntu 下Apache安装和配置2
在Ubuntu上安装Apache,有两种方式:1 使用开发包的打包服务,例如使用apt-get命令:2 从源码构建Apache.本文章将详细描述这两种不同的安装方式. 方法一:使用开发包的打包服务—— ...
随机推荐
- mysql的两阶段提交协议
http://www.cnblogs.com/hustcat/p/3577584.html 前两天和百度的一个同学聊MySQL两阶段提交,当时自信满满的说了一堆,后来发现还是有些问题的理解还是比较 ...
- 《Linux内核设计与实现》读书笔记
http://www.cnblogs.com/wang_yb/tag/linux-kernel/
- 观察者模式(二)--《Head First DesignPattern》
我们用Java中自带的观察者模式接口来重写前面的例子. 先看一下类图: 这里用到了一个setChanged函数,它用来标记状态已经改变的事实,好让notifyObservers()知道当它调用时就应该 ...
- Java垃圾回收(GC)与引用的种类
垃圾回收 GC public class MyObject { private String id; public MyObject(String id) { this ...
- MeasureSpec介绍
在自定义View和ViewGroup的时候,我们经常会遇到int型的MeasureSpec来表示一个组件的大小,这个变量里面不仅有组件的尺寸大小,还有大小的模式. 这个大小的模式,有点难以理解.在系统 ...
- 贴心小技能——纯CSS实现的帮助提示
1. 新技能传授---哒哒哒哒 我们经常会接到这样的小需求,鼠标放在某个位置实现一段小提示. 你还在用js实现这样一个小功能,你就太out了,来看看我们用纯CSS打造的帮助提示. 2. html &l ...
- java笔记01-反射
--2013年7月26日17:56:35 写文章之前,参考了这篇:http://www.cnblogs.com/Quincy/archive/2011/06/19/2084557.html 评价:这个 ...
- Linux基本命令之逻辑测试一
1.判断一个命令的结果使用test,其返回0,或一个整数.返回0表示true,返回整数表示错误码 2.获取上一个命令的返回结果使用$? 3.例如 我的服务器上面存在/home/www这样一个文件夹,所 ...
- 关于Eclipse中校验输入文件名的源代码
Eclipse中测试文件名的方法. 也没有单独的分操作系统.在Talend时解决一个在文本框中输入名字有Bug的一个问题,这个是Eclipse中解决输入名字,对名字校验的部分源码. public IS ...
- hdu 3440 差分约束
看完题目第一遍,感觉很简单.当写完程序跑测试用例的时候,发现第二个总是过不了,然后好好研究了一下测试用例,才知道原来不是程序有问题,而是我的建图方式错了.对于这些无序的点,如果高的在右边,不等式是di ...