首页 > 代码库 > WEB

WEB


web 服务器: 
                  web 服务器一般指网站服务器,可以向浏览器等 web 客户端提供文档、文件、图片( 静态 )、动态页面等;可以向全世界的人下载、浏览
          
     静态页面:一般指图片、  *.txt html
     动态页面:语言( php  asp  jsp  .net ) ——> apache 调用( php - cgi ) ——> 解析结果 ——> apache +——> client
        
      http : //www.baidu.com:80 —> IP 
      url  : //host: port —> apache( 静态页面 ) ——> 调用相应模块进行解析 ——> 结果返还给 apache ——> client
      ftp  : //vm1.uplooking.com
 
 ——>     web 架构:
      
                LAMP = Linux + Apache + MySQL + PHP     ; LNMP = Linux + Nginx + MySQL + PHP
     
            PHP 、JSP
     
            WEB ( Linux + Apache + MySQL + PHP ) ——>  web + MySQL ——> ( web1 + web2 )+ MySQL ——>  ...
            
  
     端口 80
  Apache : 是著名的 web 服务器软件,由Apache 软件基金会负责开发维护
      1、开放源码
      2、跨平台
      3、支持模块化设计                         Apache 官网:
www.apache.org
      4、安全稳定
            
  

      
 ——> 搭建 web 服务:
              
      1、 关闭防火墙和selinux
     
      2、  配置yum 源
     
      3、 软件三部曲(查看、安装、查看软件列表)
     
              1> 安装好软件、查看
                      #rpm  -aq|grep  httpd
                          httd-tools-2.2.15-29.el6_4.x86_64      工具包
                          httpd-2.2.15-29.el6_4.x86_64       server 端软件

                       #yum   -y   install   httpd-manual.noarch    安装帮助手册
             
              2> 启动服务、查看帮助手册
                     #service   httpd  start
                    
                     #firefox  
http://127.0.0.1           ——> 查看帮助手册
                     #firefox   
http://www.jinbuguo.com/apache/menu22/       ——> 中文版帮助手册(参考)
     
              3> 查看配置文件  #rpm  - ql   httpd
                      /etc/httpd 服务主目录
                      /etc/httpd/conf 相关目录
                      /etc/httpd/conf.d 相关子目录(子配置文件)
                      /etc/httpd/conf.d/README  说明书
                      /etc/httpd/conf.d/welcome.conf 欢迎页面(redhat广告页)
                      /etc/httpd/conf/httpd.conf 主配置文件

                      /etc/httpd/logs  日志文件存放位置  和  /var/log/httpd 互为硬链接
                      /etc/httpd/modules   httpd服务相应的模块
                      /etc/httpd/run  进程 和  /var/run/httpd互为硬链接
                      /etc/logrotate.d/httpd  日志轮巡
                      /etc/rc.d/init.d/htcacheclean apache官方启动脚本
                      /etc/rc.d/init.d/httpd   启动脚本

                      /usr/sbin/httpd   二进制命令
                      /var/log/httpd  
                      /var/run/httpd
                      /var/www    数据根目录
                      /var/www/html    静态页面的数据根目录

     
       4、 了解配置文件
     
      5、  通过修改配置文件来完成服务搭建
      
             需求 1 :访问默认网站
                   1、默认数据目录   /var/www/html
                         #echo  this  is  default   test   page!  > /var/www/html
                  
                   2、启动服务
                          #service   httpd  restart
                              Stopping httpd:                                            [  OK  ]
                      
                      解决:
                           #vim /etc/httpd/conf/httpd.conf
                              ...
                              ServerName  server.uplooking.com:80

                  
                   3、测试验证
                         1>   #yum   -y  install    elinks    ——> 安装 elinks 软件( 超文本解析 )
                                #elinks   
http://192.168.1.102    ——> 查看网站
                        
                         2>  firefox 
http://server.uplooking.com    ——> 查看网站
     
     
             需求 2 :共享本地目录下的文件
            
                   方法一: 通过软链接方式共享
                           #mkdir   /data
                           # touch   /data/file{1..5}
                          
                           #ln  -s   /data      /var/www/html/notes
                          
                   方法二: 通过别名方式共享       ——> 访问时必须写的与别名相同 
                          # vim  /etc/httpd/conf/httpd.conf
                              ...              别名
                              Alias   /soft/    "/software/"          在主配置文件最后添加
                              <Directory "/software">   开始给/software目录授权
                                 Options Indexes MultiViews FollowSymLinks   支持索引支持软链接
                                 AllowOverride None    不支持 htaccess文件
                                 Order allow,deny    order排序,先允许后拒绝
                                 Allow from all      允许所有人
                              </Directory>

                         #service   httpd   restart
                        
                     .223 访问:  firefox  
http://192.168.1.123/soft/
      
 
1、 如果不愿意让其看见共享目录里的内容,去掉支持索引选项
 2、如果http 服务只是共享一些文件,不需要浏览网页,那么可以将 /etc/httpd/conf/welcome.conf 文件重命名,然后重启服务 
http://127.0.0.1   能看到默认数据家目录里的文件
 
 
             需求 3 :更改默认数据家目录
                          # mkdir   /webroot      ——> 创建新数据根目录
                         
                    1> #vim /etc/httpd/conf/httpd.conf
                            ...
                            DocumentRoot "/webroot"   定义数据根目录

                            <Directory "/webroot">   给目录授权
                                Options Indexes FollowSymL
                                Order allow,deny
                                Allow from all
                            </Directory>
                    
                      2> # service httpd restart
                               Stopping httpd:                                            [  OK  ]
                               Starting httpd: Syntax error on line 293 of /etc/httpd/conf/httpd.conf:
                               DocumentRoot must be a directory
                                                                                                 [FAILED]
                     失败原因:没有创建该目录

    
 
需求 4 :基于用户名和密码认证的访问 ——> 跟本地有没有该用户没有关系
          
                     user01( 本地用户) 和 stu1( 本地没有) 用户通过密码访问首页文件
          
               1、修改配置文件
                   #vim  /etc/httpd/conf/httpd.conf
                       ...
                       <Directory "/webroot">
                           AuthType Basic   开启基本认证
                           AuthName "Input your name &password:"   提示信息
                           AuthUserFile /etc/httpd/conf/.htpassword    指定密码文件
                           #Require user user01     指定用户访问
                           #Require valid-user user01,stu1   指定多个用户
                           AuthGroupFile /etc/httpd/conf/groups    指定组的文件
                           Require group admin  指定哪个组

                           Options Indexes FollowSymLinks
                           AllowOverride None
                           Order allow,deny
                           Allow from all
                       </Directory>
         
               2、创建密码文件并将用户加入到密码文件中
                 htpasswd:
                          -c:创建新的密码文件
                          -m:md5加密
                           -b:取消交互

                         # htpasswd -cm .htpassword user01     添加用户到密码文件里
                         # htpasswd -bm .htpassword stu1 123    取消交互添加,直接写密码
                         # cat .htpassword
                              user01:$apr1$MffdS1m6$32MjzgnT/2YDDEMZeUt/P0
                              stu1:$apr1$93MFv7Vo$aTrtUftbBobzl34jtX4PM.
          
               3、 重启服务测试验证      #service  httpd  restart 
              
                       
          
 
 总结:
   1、允许某一个人通过用户名密码访问,必须将其加入密码文件里,配置文件里参数:Require  user    username
   2、允许多个人通过用户名密码访问,必须将其加入密码文件里,配置文件参数:Require valid-user username1,username2
   3、允许多个人通过用户名密码访问,必须将其加入密码文件里,配置文件里参数:指定一个组文件,AuthGroupFile /etc/httpd/conf/groups      Require group admin
            
4、用户可以不在本地操作系统存在

             
             
          需求 5 :对于网络中的虚拟机进行访问控制
         
                 Order     allow,deny       先允许后拒绝,如果allow 和deny 冲突,deny 优先
                 Order    deny,allow       先拒绝后允许,如果冲突,allow 优先
             
                 Allow  from  address
                 Deny from 205.252.46.165
                 Deny from host.example.com
 
1、拒绝大部分,允许少数                                2、 允许大部分,拒绝少部分
       Order deny,allow                                                  Order allow,deny
       Deny from all                                                        Allow from all
       Allow from dev.example.com                                  Deny from 192.168.1.2  192.168.1.3
                                                                                   Deny from 10.1.1.0/255.255.255.0  uplooking.com


本文出自 “11447124” 博客,谢绝转载!

WEB