马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
x
1.1、http 服务原理
- http 超文本传送协议 80 端口
- https 安全的超文本传输协议 443 端口
- 基于 C/S(客户端/服务端)模型
复制代码 协议流程:
- 连接:客户端与服务端建立连接
- 请求:客户端向服务端发送请求
- 应答:服务端响应,将结果传给客户端
- 关闭:执行结束后关闭
复制代码 1.2、Apache 服务器介绍
Apache 是常见的支持 HTTP 协议的 Web 服务器之一,也是使用最广泛的 Web 服务器。停止到今年 1 月, 天下上约莫有高出 500 万台 Internet 服务器使用的是 Apache Server。
Apache Server 的主要特点是稳定性高、速率快、功能多。通过第三方的评测,Apache Server 比大多数 的 Web 服务器都快。
Apache 服务器既是一种软件,又是一个工程。它是由千万万万的服务器代码和文档开发者共同努力的 结果。在 1995 年 4 月,公开发行了第一套 Apache Server,版本号是 0.6.2。Apache Server 的名字泉源于 “A PatCHy Server”。
1.2.1、Apache——A Patchy Server
特点:
支持最新的 HTTP1.1 协议。
支持 PHP、CGI、Java Servlets 和 FastCGI。
支持安全 Socket 层。 集成了 Perl 脚本编程语言。
支持 SSI 和虚拟主机。
实现了动态共享对象,答应在运行时动态装载功能模块。
具有安全、有效和易于扩展等特征。
Apache 的主要特点:
支持历程控制:在需要前自动复制历程,历程数量自动使用需求
支持动态加载模块:不需重编译就可扩展其用途
支持虚拟主机:答应使用一台 web 服务器提供多个 web 站点的共享
1.2.2、APACHE 相干文件
- 配置文件:/etc/httpd/conf/httpd.conf
- 服务器的根目录:/etc/httpd
- 根文档目录:/var/www/html
- 访问日至文件:/var/log/httpd/access_log
- 错误日至文件:/var/log/httpd/error_log
- 运行 Apache 的用户:apache
- 运行 Apache 的组:apache
- 端口:80
- 模块存放路径:/usr/lib/httpd/modules
复制代码 1.2.3、文件系统容器和网络空间容器
文件系统容器
和是针对文件系统的指令。段中的指令作用于指定的文件系统目录及其所 有子目录,.htaccess 文件可以达到同样的效果。
网络空间容器
<Loaction>是针对网络空间的指令。
<Loaction>指令无须文件系统的支持 。
注释:对比动态站点和静态站点页面来讲解
1.2.4、Apache 的历程和服务
- apache 的进程---httpd
- apache 的启动 service httpd start
- apache 的停止 service httpd stop
- apache 的重新启动 service httpd restart
复制代码 1.3、创建个人主页
1.3.1、主配置文件介绍
各字段介绍:
- ServerRoot:设定 Apache 安装的绝对路径
- TimeOut:设定服务器接收至完成的最长等待时间
- KeepAlive:设定服务器是否开启连续请求功能
- MaxKeepAliveRequests:设定服务器所能接受的最大连续请求量
- KeepAliveTimeout:使用者 ‘连续’ 请求的等待时间上限
复制代码 一般主要配置字段
1、AccessFileName
- 默认值:AccessFileName .htaccess
复制代码 此命令是针对目录的访问控制文件的名称;
2、BindAddress
设置服务器监听的 IP 地址;
3、DefaultType
- 默认值:DefaultType text/html
复制代码 服务器不知道文件范例时,用缺省值通知客户端;
4、DocumentRoot
- 默认值:DocumentRoot “/var/www/html/”
复制代码 设置 Apache 提供文件服务的目录;
5、ErrorDocument
设置当有题目发生时,Apache 所做的反应;
6、<IfModule>
使用不包含在 Apache 安装中的模块的命令
7、Include
包含别的的配置文件
8、Listen
默认值:所有可以或许毗连到服务器的 IP 地址
指定怎样响应撤除 Port 指定的端口地址外的地址哀求;
9、Options
控制某个特定目录所能使用的服务器功能;
其值有:
None:表示只能欣赏,
- FollowSymLinks:允许页面连接到别处,
- ExecCGI:允许执行 CGI,
- MultiViews:允许看动画或是听音乐之类的操作,
- Indexes:允许服务器返回目录的格式化列表,
- Includes:允许使用 SSI。这些设置可以复选。
- All:则可以做任何事,但不包括 MultiViews。
- AllowOverride:加 None 参数表示任何人都可以浏览该目录下的文件。
- 另外的参数有:FileInfo、AuthConfig、Limit。
复制代码 10、Port
默认值:Port 80
设置服务器监听的网络端口;
11、ServerAdmin
设定管理员的电子邮件地址;
12、ServerName
设定服务器的主机名称;
13、ServerRoot
默认值:ServerRoot /etc/httpd/
设定服务器的根目录;
14、User && Group
指定服务器用往返答哀求的用户 ID 和组 ID;
1.3.2、编辑主配置文件
- vi /etc/http/conf/httpd.conf
- 第(354 行)
- UserDir Disable 改成#UserDir Disable
- (361 行)启动个人主目录名称,去掉#
- UserDir public_html #配置个人主目录
- (369-380 行)启动个人用户 Web 站点的访问权限,去掉#
- <Directory /home/*/public_html>
- AllowOverride FileInfo AuthConfig Limit
- Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
- <Limit GET POST OPTIONS>
- Order allow,deny
- Allow from all
- </Limit>
- <LimitExcept GET POST OPTIONS>
- Order deny,allow
- Deny from all
- </LimitExcept>
- </Directory>
复制代码 1.3.3、启动或重启 Apache 服务
- service httpd start(restart)
复制代码 1.3.4、创建本身的个人主页
1、添加用户
2、切换用户,并进入用户主目录
3、创建文档目录,建立测试页,添加实验权限
- mkdir public_html 创建文档目录,
- vi public_html/index.html 建立测试页,
- cd /home
- chmod 711 user 添加执行权限
复制代码 1.3.5、使用欣赏器测试
在欣赏器中 http://域名或者 IP 地址/~用户名
- example:
- http://www.baidu.com/~user
复制代码 1.4、发布默认站点下目录的内容
1.4.1、进入默认根文档目录并新建目录
1.4.2、在新建的目录下生成测试文件和测试目录
1.4.3、编辑主配置文件
- vi /etc/httpd/conf/httpd.conf
- 使用文件系统容器生成文件指定目录位置
- <Directory /var/www/html/redhat>
- Options Indexes
- </Directory>
复制代码 1.4.4、重新启动服务器并测试
- service httpd restart
- http://www.baidu.com/redhat
复制代码 1.5、配置目录访问控制
1.5.1、访问控制指令
- order 顺序,设定拒绝和允许的先后顺序
- deny 拒绝
- allow 允许
- example:
- order deny,allow 拒绝所有的访问,除去明确允许的
- “拒绝优先,即默认拒绝”
- order allow,deny 允许所有的访问,除去明确拒绝的
- “允许优先,即默认允许”
- deny from 拒绝的范围
- 可以是 IP 地址,如 192.168.10.x,或者 192.168.10 或者 192.168.1.0/255.255.255.0 或者
- 192.168.10.0/24
- (针对无类的 IP 地址可以加子网掩码)可以是域名,如 aaa.bbb ;All 代表所有的
- allow from 允许的范围
- 可以是 IP 地址,如 192.168.10.x,或者 192.168.10 或者 192.168.1.0/255.255.255.0 或者
- 192.168.10.0/24
- 可以是域名,如 aaa.bbb ;All 代表所有的
复制代码 1.5.2、对站点进行访问控制设置
编辑主配置文件
拒绝优先
- <Directory /var/www/html/redhat>
- Options Indexes
- Order deny,allow
- Deny from all
- Allow from 200.200.200.200 只允许 200.200.200.200
- </Directory>
- 允许优先
- <Directory /var/www/html/redhat>
- Options Indexes
- Order allow,deny
- Allow from all
- Deny from 200.200.200.200 只拒绝 200.200.200.200
- </Directory>
复制代码 重启服务器测试
1.6、配置认证指令
- AuthName 认证名字
- AuthType 认证类型,有两种
- Basic,基本认证类型,所有浏览器均支持
- Digest,摘要认证类型,部分浏览器不支持
- AuthUserFile 认证用户文件,存放认证用户的列表文件
- Require valid-user 授权给通过认证的所有用户
- Require user 用户名 授权给通过认证的指定用户
复制代码 1.6.1、在主配置文件中添加授权认证的指令
- <Directory /var/www/html/redhat>
- Options Indexes
- AuthName “rz” 认证名称为 rz
- AuthType Basic 认证类型为基本认证类型
- AuthUserFile file1 指定认证用户文件
- Require valid-user 授权给通过认证的所有用户
- </Directory>
复制代码 1.6.2、生成认证授权文件,并添加用户
- #htpasswd -c /etc/httpd/认证文件 用户名
复制代码 1.6.3、更改认证授权文件的属主和属组为 apache
- #chown apache.apache /etc/httpd/认证文件
复制代码 1.6.4、重新启动 apache 服务
1.6.5、访问测试
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |