Web网站服务(二)

简介:

6-Web网站服务(二)

《名词解释》

【租用空间】:把网站放在专门的公司托管,但可能是一台电脑上有多个网站在运 ,带宽都是同时在使用,相对而言不是非常安全

【托管】:一般大公司比较常用,同样也是把公司网站放在专门的公司托管,但是是用自己的电脑放过去,所以是一台电脑对应一个网站。相对来说比较安一些

【专线】:拉一条专线到自己的公司,由公司的网络管理员看管。

081250248.jpg

一,httpd服务的访问控制

分类:客户机地址限制、用户授权限制

设置:httpd.conf主配置中的目录区域<Directory  目录位置>….</Directory>范围内

1),客户机地址限制

   #根据客户机的主机名或IP地址来决定是否允许客户端访问

   #通过配置项“OrderDenyfromAllow  from

       allowdeny:先允许后拒绝,默认拒绝所有未明确允许的客户机地址

       denyallow:先拒绝后允许,默认允许所有未明确拒绝的客户机地址

   #地址限制形式可以是:IP地址、网络地址、主机名、域名

【案例一】:允许从任何客户机访问

          <Directory  “/usr/local/httpd/htdocs”>

                 ......//省略部分内容

                 Order  allow,deny

                 Allow  from all

          </Directory>

【案例二】:允许指定IP能够访问Awstats系统

          <Directory  “/usr/local/awstats/wwwroot”>

                 Order  allow,deny

                 Allow  from 173.17.17.173

          </Directory>

【案例三】:禁止指定网段访问

          <Directory  “/usr/local/awstats/wwwroot”>

                 Order  deny,allow

                 Allow  from 192.168.1.0/24   192.168.2.0/24

          </Directory>

2),用户授权限制

Øhttp服务支持方式:摘要认证(Digest)、基本认证(Basic

Ø使用摘要认证需要编译http之前添加“--enable-auth-digest”选项

Ø使用基本认证不需要预先配置特别的选项

Ø用户访问控制包含“认证”和“授权”两个过程

认证(Authentication)是指识别用户身份的过程

授权(Authorization)是允许特定用户访问特定目录区域的过程

1、创建用户认证数据文件

Ø授权访问的用户账号需要事先建立,并保存在固定的数据文件中

Ø使用“htpasswd”工具程序,可以创建授权用户数据文件,并维护其中的用户账号

Øcd /usr/local/httpd/             /进入httpd目录

Øbin/htpasswd  -c /usr/local/httpd/conf/.awspwd webadmin

New  Password:                              /输入密码

Re-type  new  password:                    /确认密码

Øcat /usr/local/httpd/conf/.awspwd             /确认用户数据文件

2、添加用户授权配置

Ø修改httpd.conf配置文件

Ø在特定的目录区域中添加授权配置,以启用基本认证并设置允许哪些用户访问

Øvim /usr/local/httpd/awstats/wwwroot

<Directory  “usr/local/awstats/wwwroot”>

        ……//省略部分内容

        AuthName  “hello”

        AuthType  Basic

        AuthUserFile  /usr/local/httpd/conf/.awspwd

        require  valid-user

</Directory>

Øservice httpd  restart                 /重启httpd服务

【配置项的含义说明】

   AuthName:定义受保户的领域名称,该内容将在浏览器弹出的认证对话框中显示

   AuthType:设置认证的类型,Basic表示基本认证

   AuthUserFile:设置用于保存用户账号、密码的认证文件路径

   require  valid-user:要求只有认证文件中的合法用户才能访问,其中valid-user表示所有合法用户,若只授权给单个用户,可以改为指定的用户名(如,webadmin)


3、验证用户访问授权

二、构建虚拟Web主机

基于域名:为每个虚拟主机使用不同的域名,但是其对应的IP地址是相同的

基于IP地址:为每个虚拟主机使用不同的域名,且各自对应的IP地址也不相同、这种方式需要为服务器配置多个网络接口,此应用并不是非常广泛

基于端口:这种方式并不使用域名、IP地址来区分不同站点内容,而是使用了不同的TCP端口号,因此用户在浏览不同的虚拟站点时需要同时指定端口号才能访问

(1),基于域名的虚拟主机

1、为虚拟主机提供域名解析

2、为虚拟主机准备网页文档

                  mkdir  /var/www/benet

                  mkdir  /var/www/accp

                  echo  www.benet.com  > /var/www/benet/index.html

                  echo  www.accp.com  > /var/www/accp/index.html

3、添加虚拟主机配置

监听地址:使用NameVirtualHost配置项指定提供虚拟主机服务的IP地址,也就是进行域名查询时各虚拟Web主机的IP地址

虚拟主机区域:使用<VirtualHost 监听地址>……</VirtualHost>区域配置;其中至少包括“虚拟主机的网站名称”、“网站根目录的配置项”

目录权限:使用<Directory 目录位置>……</Directory>区域配置;为每一个虚拟Web主机的网站目录设置访问权限,如允许任何人访问,目录访问可以继承其父目录的授权许可

vim /usr/local/httpd/conf/extra/httpd-vhosts.conf


<Directory  “/var/www”>                               /
设置目录访问权限

                 Order  allow,deny

                 Allow  from all

  </Directory>



<VirtualHost  *:80>                                      /
监听端口为80

                  DocumentRoot  /var/www/benet           /设置benet虚拟站点区域

                 ServerName  www.benet.com

  </VirtualHost>



<VirtualHost  *:80>

                  DocumentRoot  /var/www/accp          /设置accp虚拟站点区域

                  ServerName  www.accp.com

  </VirtualHost>


NameVirtualHost  *:80                                    /设置虚拟主机监听地址

                                                           基于IP、端口这项一定要关闭

vim  /usr/local/httpd/conf/httpd.conf

        Include  conf/extra/httpd-vhosts.conf             /加载独立的配置文件

service  httpd restart                                 /重启服务

4、在客户机中访问虚拟Web主机

(2),基于IP地址虚拟主机

第一步vim /usr/local/httpd/conf/extra/httpd-vhosts.conf


              <Directory “/var/www”>

                           Order  allow,deny

                           Allow  from all

              </Directory>



   <VirtualHost  
192.168.1.100>                 /设置benet虚拟站点区域

                           DocumentRoot  /var/www/benet

                           ServerName  www.benet.com

              </VirtualHost>


   <VirtualHost  
192.168.1.200>                 /设置accp虚拟站点区域

                           DocumentRoot  /var/www/accp

                           ServerName  www.accp.com

              </VirutalHost>

第二步】:vim  /usr/local/httpd/conf/httpd.conf

              Include  conf/extra/httpd-vhosts.conf         /加载独立的配置文件

3),基于端口的虚拟主机

第一步vim /usr/local/httpd/conf/extra/httpd-vhosts.conf


          <Directory “/var/www”>

                        Order  allow,deny

                        Allow  from all

          </Directory>



<VirtualHost  192.168.1.100:
80>                 /设置benet虚拟站点区域

                        DocumentRoot  /var/www/benet

                        ServerName  www.benet.com

          </VirtualHost>



<VirtualHost  192.168.1.100:
8080>              /设置accp虚拟站点区域

                         DocumentRoot  /var/www/accp

                         ServerName  www.accp.com

          </VirutalHost>

第二步】:vim  /usr/local/httpd/conf/httpd.conf

                Include  conf/extra/httpd-vhosts.conf    /加载独立的配置文件

                Listen  192.168.1.100:80                 /监听80的端口

                Listen  192.168.1.100:8080               /监听8080的端口



本文转自甘兵 51CTO博客,原文链接:http://blog.51cto.com/ganbing/1201440,如需转载请自行联系原作者

相关实践学习
基于函数计算快速搭建Hexo博客系统
本场景介绍如何使用阿里云函数计算服务命令行工具快速搭建一个Hexo博客。
相关文章
|
1月前
|
网络协议 Java Nacos
nacos常见问题之在web界面 上下线服务时报错 400如何解决
Nacos是阿里云开源的服务发现和配置管理平台,用于构建动态微服务应用架构;本汇总针对Nacos在实际应用中用户常遇到的问题进行了归纳和解答,旨在帮助开发者和运维人员高效解决使用Nacos时的各类疑难杂症。
31 0
|
1月前
|
监控 Serverless 测试技术
Serverless 应用引擎常见问题之做的web服务计费如何解决
Serverless 应用引擎(Serverless Application Engine, SAE)是一种完全托管的应用平台,它允许开发者无需管理服务器即可构建和部署应用。以下是Serverless 应用引擎使用过程中的一些常见问题及其答案的汇总:
407 3
|
1月前
|
JSON API 数据库
解释如何在 Python 中实现 Web 服务(RESTful API)。
解释如何在 Python 中实现 Web 服务(RESTful API)。
26 0
|
1月前
|
负载均衡 Java 中间件
使用Go语言构建高性能Web服务
Go语言作为一种快速、高效的编程语言,其在构建高性能Web服务方面具有独特优势。本文将探讨如何利用Go语言开发和优化Web服务,以实现更高的性能和可伸缩性。
|
2月前
|
Arthas 监控 NoSQL
web服务性能监控方案
web服务性能监控方案
|
1月前
|
网络协议 Shell 网络安全
实验目的1.编译安装httpd2.优化路径3.并将鲜花网站上传到web服务器为网页目录4.在客户机访问网站http://www.bdqn.com
实验目的1.编译安装httpd2.优化路径3.并将鲜花网站上传到web服务器为网页目录4.在客户机访问网站http://www.bdqn.com
164 0
|
24天前
|
数据采集 Java API
python并发编程: Python使用线程池在Web服务中实现加速
python并发编程: Python使用线程池在Web服务中实现加速
18 3
python并发编程: Python使用线程池在Web服务中实现加速
|
1月前
javaWeb服务详解(含源代码,测试通过,注释) ——web.xml
javaWeb服务详解(含源代码,测试通过,注释) ——web.xml
7 0
|
1月前
|
XML JSON API
通过Flask框架创建灵活的、可扩展的Web Restful API服务
通过Flask框架创建灵活的、可扩展的Web Restful API服务
|
1月前
|
开发框架 前端开发 JavaScript
推荐5款热门的Web前端开发框架,助你快速构建优秀网站
推荐5款热门的Web前端开发框架,助你快速构建优秀网站
89 1
推荐5款热门的Web前端开发框架,助你快速构建优秀网站