北风留影 发表于 2018-11-22 12:11:30

linux下apache配置

  Apache简介
  

  Apache源于NCSAhttpd服务器,经过多次修改,成为世界上最流行的Web服务器软件之一。Apache取自“a patchy server”的读音,意思是充满补丁的服务器,因为它是自由软件,所以不断有人来为它开发新的功能、新的特性、修改原来的缺陷。Apache的特点是简单、速度快、性能稳定,并可做代理服务器来使用。
  

  环境拓扑:
                                      LinuxClient
  ----------RHEL5.9(vmnet1)----------(vmnet1)
                                      Win7Client
  

  

  前提条件:
  1、配置IP
  # cat/etc/sysconfig/network-
  scripts/ifcfg-eth0
  
  # Intel Corporation 82545EMGigabit Ethernet Controller
  (Copper)
  DEVICE=eth0
  BOOTPROTO=static
  ONBOOT=yes
  HWADDR=00:0c:29:5d:a8:80
  IPADDR=192.168.10.253
  NETMASK=255.255.255.0
  
  2、配置主机名
  # cat/etc/sysconfig/network
  NETWORKING=yes
  NETWORKING_IPV6=yes
  HOSTNAME=web01.tarena.com
  3、修改hosts文件
  # cat /etc/hosts
  # Do not remove the followingline, or various programs
  # that require networkfunctionality will fail.
  127.0.0.1               localhost.localdomain localhost
  ::1             localhost6.localdomain6 localhost6
  192.168.10.253web01.tarena.com      web01
  
  
  实验一:查看默认HTTP配置
  找到默认红帽欢迎页面(/etc/httpd/conf/httpd.conf ---->Include ---->/etc/httpd/conf.d----> welcome.conf---->/var/www/error/noindex.html)
  
  4、软件包的安装
  # rpm -qhttpd         
package httpd is not installed             //提示没有安装
  # yum -yinstall httpd
  
  5、启动服务
  # servicehttpd restart
  # chkconfighttpd on
  
  
  试验二:基本HTTP服务器的配置
     Web服务器域名:www.tarena.com
     默认首页包括:index.html、index.php
     开启保持连接
     确认默认httpd是否支持php
     网站用老师提供的test_web.zip测试
  
  服务器操作:
  1、备份主配置文件
  # cd/etc/httpd/conf
  # cphttpd.conf httpd.conf.bak
  2、修改主配置文件
  # vim/etc/httpd/conf/httpd.conf
  ...
   74 KeepAlive On   //是否保持连接,可选On或Off
  ...
  265 ServerName www.tarena.com:80      //设主机名
  ...
  391 DirectoryIndex index.htmlindex.php   //设默认首页
  ...
  3、启动服务
  # servicehttpd restart
  # cd/root/Desktop/
  #unzip test_web.zip   //解压网站包(可以在网上找)
  #mvjiajutiyan/* /var/www/html///导入到html下
  
  4、编写测试php页面
  # cat/var/www/html/test.php
  
  
  测试:
  1、在客户端hosts文件指定
  C:\Windows\System32\drivers\etc(没有DNS服务,又想通过域名访问,只能写hosts文件)
  192.168.10.253      www.tarena.com      www

  2、打开浏览器
  http://www.tarena.com

  http://www.tarena.com/test.php
  

  

  说明不支持PHP
  
  实验二 1.拒绝所有人访问,只允许192.168.10.21访问
         2.给一个长目录建立别名
  1.允许192.168.10.21访问
  # vim/etc/httpd/conf/httpd.conf
  ...
  306
  ...
  333   Order allow,deny             //先允许,后拒绝
  334 #    Allow from all                //允许所有
  335   Allow from 192.168.10.21       //只允许21访问,其它拒绝
  336
  ...
  
  2、新建authdir站点
  # mkdir/var/www/html/authdir
  # cat -n/var/www/html/authdir/index.php
     1 www.tarena.com
  # vim/etc/httpd/conf/httpd.conf
  ...
  337
  338         Order allow,deny
  339         Allow from all
  340
  # servicehttpd restart
  在不同客户端测试

  

  

  
  
试验四:HTTP的用户授权
客户端访问http://www.tarena.com/authdir需要输入用户名密码验证

1、修改主配置文件
# vim /etc/httpd/conf/httpd.conf
...
337
338         Order allow,deny
339         Allow from all
340         AuthName "Please InputPassword!!"//认证领域名称,用于弹窗提示
341         AuthType Basic          //认证类型,一般使用basic
342         AuthUserFile"/etc/httpd/.vuser" //用户数据文件的路径
343         Require valid-user      //指定授权用户或组
344
...
2、创建账户密码
# htpasswd -c /etc/httpd/.vuseradmin
New password:               //设置密码
Re-type newpassword:       //重置设置密码
Adding passwordfor user admin
3、启动服务测试
# service httpd restart
在不同客户端上测试
http://www.tarena.com/authdir





  
实验五:HTTP目录别名
客户端访问http://www.tarena.com/sina时可以访问/var/www/html/sina.com/bbs下的网页
1、创建测试站点
# mkdir -p /var/www/html/sina.com/bbs
# cat /var/www/html/sina.com/bbs/index.html
www.tarena.com
2、修改主配置文件
# tail -n 1 /etc/httpd/conf/httpd.conf
Alias      /sina    "/var/www/html/sina.com/bbs"    //设置别名
3、启动服务测试
#service httpd restart
http://www.tarena.com/sina




如果报错,请查看主配置权限
    Allow from all
#   allow from192.168.10.21

实验六:
查看默认HTTP使用进程管理方式
更改默认进程管理方式为worker模式
# httpd -l    //查看httpd启用模块
Compiledin modules:         
core.c
prefork.c                   //prefork模式
http_core.c
mod_so.c
# cd /usr/sbin/
# ls http*               //查看所有http
# mv httpd httpd.prefork
# mv httpd.worker httpd
# service httpd restart   //重启服务
# httpd -l
Compiled inmodules:
core.c
worker.c            //worker模式(高并发时使用)
http_core.c
mod_so.c

试验七:
部署Awstats统计Http访问日志
安装前准备:
awstats-7.1.tar.gz软件
1、安装软件(软件在/usr/src下)
# cd /usr/src/
# tar -zxvf awstats-7.1.tar.gz -C /usr/local/
# cd /usr/local/
# mv awstats-7.1/ awstats
# cd awstats/tools/
# ./awstats_configure.pl
...
Config file path('none' to skip web server setup):
>/etc/httpd/conf/httpd.conf    //输入apache的主配置文件
...
-----> Need tocreate a new config file ?
Do you want me tobuild a new AWStats config/profile
file (required iffirst install) ? y   //生成awstats的配置文件
...
Your web site,virtual server or profile name:
>www.tarena.com            //输入你的web服务器名字
...
Default:/etc/awstats
Directory path tostore config file(s) (Enter for default):
>
...
/usr/local/awstats/tools/awstats_updateall.plnow
Press ENTER tocontinue...
...
Press ENTER tofinish...
2、修改主配置文件
# vim /etc/awstats/awstats.www.tarena.com.conf
...
51LogFile="/var/log/httpd/access_log"
# mkdir /var/lib/awstats   
3、将日志文件导入Awstats
# ./awstats_updateall.pl now   //更新日志文件
# crontab –l         //计划任务
*/5 * * * * /usr/local/awstats/tools/awstats_updateall.pl now
# service crond restart
# chkconfig crond on
4、验证:
http://www.tarena.com/awstats/awstats.pl?config=www.tarena.com




补充:
通过html代码实现网页跳转功能
# cat /var/www/html/awstats.html






验证:
http://www.tarena.com/awstats.html






页: [1]
查看完整版本: linux下apache配置