web服务器架设

http: 提供web服务
        port :80 tcp协议  version:1.1 无状态的不保存用户账号
cookie 可以保存用户认证信息
响应码:
url重定向301 302
4 zaz暂时性错误
5 永久性错误
 
服务器web软件:       httpd  
              lighttpd   nginx反向加速较好 --》开源轻量级 静态页面性能较好
              IIS  WEBSPHERE  TOMCAT  RESIN
httpd :Apache   网站:www.apache.org
主配置文件:/etc/httpd/conf/httpd.conf
服务脚本:/etc/init.d/httpd
网页默认页面:/var/www
网页静态默认目录:/var/www/html/
网站主页:/var/www/html/index.html
索引:index 在主页面不存在时 会把/var/www/html的页面都显示出来
httpd支持的页面格式:.html  .jsp
 
主配置文件:
              vim  /etc/httpd/conf/httpd.conf
                     DocumentRoot "/var/www/html" 定义网页文件根目录
                     <Directory /> 容器定义目录属性的
                         Options Indexes索引 FollowSymLinks跟踪符号链接 一般要关掉
                         AllowOverride None  是否允许覆盖acl控制列表  off 不认证 默认为None
                     Order allow,deny   定义acl的 先允许后拒绝 Order deny,allow  拒绝65的访问
                         Allow from all                              Deny from 192.168.0.65
                     </Directory>
                     # UserDir disable  启用在普通用户家目录建立网页文件
                     UserDir public_html 目录名
                     ErrorLog logs/error_log  定义错误日志文件
                     CustomLog logs/agent_log combined  定义访问日志文件
 
       在修改默认网页DocumentRoot目录:1、关闭selinux
                         2、在不关闭selinux时要修改目录的标签 加入目录为/www
                              ls -Z /www
                               chcon -R --reference=/var/www/html  /www
      启用在普通用户家目录建立网页文件:主配置文件修改
                           # UserDir disable  关闭
                            UserDir public_html 启用
                            su - student
                            mkdir public_html
                            vim piblic_html/index.html
                            chmod a+x /home/student
                            setenforce 0
                            service httpd restart
                      测试:http://192.168.0.124/~student
                            目录名不为public_html时要修改目录标签为
                            user_u:object_r:httpd_sys_content_t
       创建路径别名:主配置文件下添加
                     Alias /bbs  "/tmp/bbs"  路径一般要对应
                     mkdir /bbs /tmp/bbs
                     vim /tmp/bbs/index.html
                     service httpd restart
                测试:http://192.168.0.124/bbs
 
       注意:再修改主配置文件时都要重启服务 其前最好测试主配置文件语法的正确性
              测试服务httpd -t 配置文件语法的正确性 或者
               service httpd configtest
              service httpd restart或reload
             
       ACL启用用户认证访问 提供账号和密码
              conf下的httpd.conf修改:
              <Directory "/www">
              AllowOverride AuthConfig 
              AuthName "jjjjj" 显示信息
              AuthType  basic (local) 使用本地的文件当做数据库
              AuthUserFile /home/bob/.passwd 密码信息文件
              require user jing king (允许的用户名)
              </Directory>
              htpasswd -cm 创建密码文件 第二次不用c参数
              htpasswd -cm /home/bob/.passwd jing
              htpasswd -c /home/bob/.passwd king
              简单定义多用户:require valid-user  将用户加入密码文件/home/bob/.passwd即可
       对单个目录做认证:
              创建.htaccess文件
              将用户认证的信息添加里面,目录为要认证的目录
ssl认证:      协议版本 sslv1 sslv2
              ssl配置文件:/etc/httpd/conf.d/ssl.conf
              SSLProtocol all -SSLv2  协议
              SSLVerifyClient require 验证客户端证书 默认没开启    
       基于https的方式访问网站:
              安装模块 yum install mod_ssl
              配置文件:/etc/httpd/conf.d/ssl.conf
              做自签CA
              mkdir /etc/httpd/ssl
              cd /etc/httpd/ssl
              openssl genrsa 1024 > httpd.key
              openssl req -new -kry httpd.key -out httpd.csr
              openssl ca -in httpd.csr -out httpd.crt
              vim  /etc/httpd/conf.d/ssl.conf
                     SSLCertificateFile /etc/httpd/ssl/httpd.crt
                     SSLCertificateKeyFile /etc/httpd/ssl/httpd.key
                     DocumentRoot "/www"
                     ServerName www.a.com:443
              httpd -t
              service httpd restart
              测试:https://192.168.0.124
              https不支持基于主机名的虚拟主机
       CGI格式的脚本:支持cgi格式的网页
              /etc/httpd/conf/httpd.conf 默认启用
             
       虚拟主机:          
              web服务器,同时提供多个网站服务,即多个主机,一个主机,占用一个排它性的资源
              一个主机:
                     基于ip:
                            192.168.0.124:80
                            192.168.0.125:80
                     基于端口:一个ip使用多个不同端口实现多个网站服务
                     基于主机名:多个域名同时指向一个端口,较为常用
                            www.a.com:80
                            www.b.com:80
 
 
       配置虚拟主机:基于ip的
                     mkdir /var/www/html/www1  /var/www/html/www2
                     vim /var/www/html/www1/index.html
                     vim /var/www/html/www2/index.html
              取消中心主机 DocumentRoot注释掉
                     <VirtualHost 192.168.0.124:80>
                         DocumentRoot /var/www/html/www1
                                ServerName www1.ilinux.org
                          ErrorLog /var/log/httpd/www1.err  定义错误日志的
                                CustomLog /var/log/httpd/www1.access common(combind 日志类型) 
                                     <Directory "/var/www/html/www1"> 对目录定义acl
                                     Order allow,deny
                                    Allow from 192.168.0.0/24
                                       </Directory>
                     </VirtualHost>
                     <VirtualHost 192.168.0.125:80>
                         DocumentRoot /var/www/html/www2
                                ServerName www2.ilinux.org
                                ErrorLog /var/log/httpd/www2.err
                            CustomLog /var/log/httpd/www2.access common  
                     </VirtualHost>
              基于端口的:
                     将<VirtualHost 192.168.0.124:80>修改即可
                      <VirtualHost 192.168.0.124:8080>
                     listen 80 
                     listen 8080   添加
                     service httpd restart
                     测试:http://192.168.0.124
                           http://192.168.0.124:8080
              基于主机名的:
                     nameVirtualHost 192.168.0.124:80  开启 与下面对应 ip可以为*
                     <VirtualHost 192.168.0.124:80>
                     <VirtualHost 192.168.0.124:80>
 
Apache压力测试
            -c 并发连接数   
            -n 发起的请求
              ab -c 100 -n 3000 http://www1.ilinux.com/index.html
 
php :Personal Home Page   网站: www.php.net
       PHP 超文本预处理器  解释性的语言 做web开发
 
       php+httpd 一块工作
              php做成apache的模块  redhat的默认方式    
              php做成一个单独的应用程序服务器
              php+httpd 配置:
                     yum install mod_php
                     配置文件:/etc/httpd/conf.d/php.conf
                            DirectoryIndex index.php 主网页文件
                     修改主文件 mv /var/www/html/www1/index.html  /var/www/html/index.php
                     vim index.php
                            <h1> test </h1>
                            <?php
                            phpinfo();
                            ?>
                     service httpd restart
 
              
                     
 
 

你可能感兴趣的:(服务器,cookie,version,web服务器,定向)