美奇科技 发表于 2018-11-28 07:17:19

Web服务器(Apache)的配置与使用

    一.基本概念:
  1. Web服务的定义
  Web服务是基于B/S模型,服务器端可以为客户端提供动态的,交互的超文本服务;
  2.Web服务器的含义
  运行http协议和Web服务器软件且能够为客户端提供Web服务的主机称为Web服务器
  3. Web服务的工作流程
  ⑴ 客户端通过客户程序建立与服务器的连接;
  ⑵ 访问中服务器的相应资源
  ⑶ 断开连接
  4. 常见的服务器软件:
  httpdlighttpd thttpd nginx IIS Webspere Weblogic tomcat
  5. APACHE特点:
  可移植性强
  支持DSO功能
  支持JSP、PHP、CGI
  支持MYSQL、POSTGRESQL
  支持基于IP地址/域名的虚拟主机
  支持OPENSSL
  二.基本配置与使用
  1.所需要的软件包:
  httpd-2.2.3-31.e15.i386.rpm
httpd-devel-2.2.3-31.el5.i386.rpm
httpd-manual-2.2.3-31.el5.i386.rpm
system-config-httpd-1.3.3.1-1.el5.noarch.rpm
  2.配置文件的目录:
  /etc/httpd/conf/httpd.conf (Apache 的核心配置文件)
  /etc/rc.d/init.d/httpd    (Apache 的启动脚本)
  /usr/sbin/apachectl      (Apache 的管理工具)
  /etc/httpd/modules      (Apache模块存放目录)
  /etc/httpd/conf         (存放httpd的配置子文件)
  /usr/bin/htpasswd    (建立http用户和设置用户口令)
  .htaccess         (存放目录的访问控制选项)
  /var/www/html            (存放网页的配置目录)
  3.主配置文件(/etc/httpd/conf/httpd.conf)中的一些常用配置:
  ❶Timeout 300      定义服务器与客户端的连接超时时间
❷KeepAlive On/Off设置Apache是否保持连接
❸http1.1MaxKeepAliveRequests 100 定义http1.1的一次连接中允许的最大请求数
  ❹KeepAliveTimeout 15   定义一次连接中的两次请求之间的间隔时间
  ❺MinSpareServers 5 设置httpd产生的最少空闲子进程数
  ❻MaxSpareServers 20 设置httpd产生的最大空闲子进程数
  ❼StartServers 8   设置httpd启动时产生的子进程个数
❽MaxClients 150      定义服务器的最大并发连接数❾MaxRequestsPerChild 1000 设置每一个子进程接受的最大请求数
  ❿Listen端口号/IP 地址:端口号 设置服务器httpd守护进程的监听端口
4.安装web服务
  yum install httpd -y (如没有安装yum源,可以使用rpm进行安装)
  service httpd start
  三:配置功能实现,以案例为主:
  以下实验过程如果无法访问,一定通过getenforce命令查看状态,必须为Permissive,否则通过setenforce 0进行修改。

  案例一:实现用户家目录的访问:
  编辑主配置文件:vim /etc/httpd/conf/httpd.conf
  1.在配置文件中进行修改:注销 355行    # UserDir disable
                                                    开启362行: UserDir public_html 保存退出
  (由于appache主配置文件内容比较多,我在这里添上行号,方便修改,行号可能有出入,不过基本都在这一片,好好查找,以防出错)
  2.su - student
  mkdir public_html
  cd /public_html
  vim index.html (任意编辑一句话,进行实验效果的验证)
  This is a home dir!保存退出
  exit 退出student用户登录,切换root用户登录
  chmod o+x /home/student修改权限
  3.service httpd restart
  4.效果验证:在浏览器中输入http://192.168.0.8/~student
  案例二:修改默认目录(/var/www/html),实现其他目录访问:
  1.mkdir /www 创建目录
  2.修改主配置文件:
  281行:DocumentRoot "/var/www/html" 修改为DocumentRoot    "/www"
306行:修改为
  保存退出
  3.vim /www/index.html
  This is a www dir test.
  4.service httpd restart重启服务
  5.实验效果验证:在浏览器中输入http://192.168.0.8
  案例三:实现www下子目录的访问:
  ①cd /www
mkdir bbs
vim /bbs/index.html
  This is bbs dir.
  进行访问:http://192.168.0.8/bbs
  ②如果bbs不在www目录下
mv bbs /tmp
需要修改配置文件:Alias /icons/ "/var/www/icons/"
                              Alias /bbs    "/tmp/bbs"
重启服务,访问即可

  案例四:浏览时需要提供密码才能访问:
1.修改配置文件:AllowOverride None(是否允许覆盖) 修改为   AllowOverride AuthConfig
                                                                  AuthName "Welcome"
                                                                  AuthType basic(认证类型,basic基于本地文件认证)
                                                                  AuthUserFile /etc/httpd/.htpasswd
                                                                  require(valid-user)user user1 user2 (允许用户登录)
                           修改完成保存退出,重启服务
2.添加访问用户   htpasswd -cm /etc/httpd/.htpasswd user1
                            htpasswd -m /etc/httpd/.htpasswd user2
  3.实验效果验证:在浏览器中输入http://192.168.0.8
  案例五:https方式访问
①安装mod_ssl模块:yum install mod_ssl*
               cd /etc/httpd/conf.d
               ls查看会生成ssl.conf
②制作CA:
  cd /etc/pki/tls
vim openssl.cnf
修改:[ CA_default ]
dir = /etc/pki/CA
  cd /etc/pki/CA
openssl genrsa 1024 > private/cakey.pem生成密钥对
openssl req -new -x509 -key pravite/cakey.pem-out cacert.pem -days 365 自签
mkdir certs newcerts crl
touch index.txt serial
echo 01 > serial
③为web服务签证:
  cd /etc/httpd
mkdir ssl
cd ssl/
openssl genrsa 1024 > httpd.key生成密钥
openssl req -new -key 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.aaa.com:443
  在Windows下:C:\Windows\System32\drivers\etc   修改hosts文件,将ip地址及www.aaa.com写入
  将linux下的/etc/pki/CA下的cacert.pem放到Windows下,修改为cacert.crt
修改Ie设置:工具->内容->证书->受信任的证书颁发机构,导入证书即可



页: [1]
查看完整版本: Web服务器(Apache)的配置与使用