第四章  构建LAMP网站服务平台

实验报告

1、安装apache服务器软件及相关组件

查看系统中是否安装apache服务相关的软件包:

[root@www /]# rpm -qa | grep httpd

----------------------------------------------------------------

httpd-2.2.3-31.el5               apache服务器程序软件包

httpd-manual-2.2.3-31.el5     apache服务器帮助手册文档

----------------------------------------------------------------

只需要包含这2个软件包即可!

2、查看安装的目录和文件

[root@www /]# rpm -ql httpd

[root@www /]# rpm -ql httpd-manual

与apache服务器相关的主要目录和文件如下:

----------------------------------------------------------------

/etc/httpd                     apache服务器程序的根目录

/etc/httpd/conf/httpd.conf   apache服务器主配置文件

/etc/httpd/conf.d              apache服务器其他功能模块的配置文件存放目录,如mysql、php、ssl、perl等的配置文件

/var/www/html         网页文档的默认根目录

/etc/init.d/httpd       apache服务器的脚本控制文件

/usr/sbin/httpd        apache服务器的主要执行程序

/var/log/httpd/access_log   访问日志文件

/var/log/httpd/error_log    错误日志文件

/usr/sbin/apachectl      apache服务器的脚本控制文件

/usr/bin/ab          apache自带的一个压力测试工具(apache基准测试工具)

/usr/bin/htpasswd              产生身份验证用户的密码文件

/usr/lib/httpd/modules         apache服务器的模块存放目录

/var/log/httpd                 存放apache的日志文件

----------------------------------------------------------------

3、默认情况下主配置文件做必要的修改即可构建基本可用的web服务器

#####分割线 构建基本可用的web服务器####

基本步骤:

(1) 修改主配置文件httpd.conf

去掉注释:#ServerName www.example.com:80

修改为:ServerName www.benet.com:80

需要有DNS服务器的支持,首先搭建DNS服务器

(2) 检查主配置文件httpd.conf是否存在语法错误

方法一:apachectl -t

方法二:httpd –t

(3) 启动httpd服务

[root@www /]# service httpd start

(4) 查看httpd服务端口是否开启

[root@www /]# netstat -anpt | grep 80

(5) 在客户端通过浏览器访问测试

http://www.benet.com/

#########分割线 测试web服务器的性能###########

基本步骤:

(1) 使用ulimit命令修改最大文件数限制为10000

ulimit -n 10000

(2) 使用ab命令进行压力测试

[root@www /]# ab -q -c 2000 -n 4000 http://www.benet.com/

(3) 查看得到的统计信息

########分割线 构建基于IP/端口/域名的虚拟主机##########

基本步骤:

********实现基于IP的虚拟主机********

(1) 创建虚拟主机测试web文档

假设当前web服务器有3个虚拟主机

虚拟主机一 对应主目录  /var/www/html

虚拟主机二 对应主目录  /var/www/xuni2

虚拟主机三 对应主目录  /var/www/xuni3

[root@www /]# cd /var/www

[root@www www]# mkdir xuni2 xuni3

分别在3个目录中放置测试web文档,默认名称都是index.html

参考web文档HTML代码:

<html>

<head>

<title>

~~~~~~~~~~~~~Virtual host~~~~~~~~~~~

</title>

<body bgcolor=blue>

<p align=center>

##############Virtual Host###########

</p>

</body>

</head>

</html>

(2) 给当前服务器设置2个虚拟接口,并分配IP地址

[root@www /]# ifconfig eth0:0 192.168.100.3 netmask 255.255.255.0

[root@www /]# ifconfig eth0:1 192.168.100.4 netmask 255.255.255.0

(3) 修改apache主配置文件httpd.conf,配置虚拟主机

[root@www /]# vi /etc/httpd/conf/httpd.conf

定位到最后一行

<VirtualHost 192.168.100.2:80>

DocumentRoot /var/www/html

  ServerName host1               //这里设置虚拟主机的主机名

</VirtualHost>

<VirtualHost 192.168.100.3:80>

DocumentRoot /var/www/xuni2

ServerName host2

</VirtualHost>

<VirtualHost 192.168.100.4:80>

DocumentRoot /var/www/xuni3

ServerName host3

</VirtualHost>

(4) 重新启动httpd服务,在客户端通过浏览器访问测试

http://192.168.100.2/

http://192.168.100.3/

http://192.168.100.4/

********实现基于端口的虚拟主机********

(5) 删除掉刚才添加的2个虚拟接口

[root@www /]# ifconfig eth0:0 down

[root@www /]# ifconfig eth0:1 down

(6) 修改apache主配置文件httpd.conf,配置虚拟主机

定位到最后一行

修改listen参数为:

Listen 192.168.100.2:80

listen 192.168.100.2:81

listen 192.168.100.2:82

修改虚拟主机参数为:

<VirtualHost 192.168.100.2:80>

DocumentRoot /var/www/html

servername host1

</VirtualHost>

<VirtualHost 192.168.100.2:81>

DocumentRoot /var/www/xuni2

servername host2

</VirtualHost>

<VirtualHost 192.168.100.2:82>

DocumentRoot /var/www/xuni3

servername host3

</VirtualHost>

(7) 重新启动httpd服务,在客户端通过浏览器访问测试

http://192.168.100.2/

http://192.168.100.2:81/

http://192.168.100.2:82/

********实现基于域名的虚拟主机********

(8) 配置DNS服务器,创建区域及相应主机名

www.benet.com   192.168.100.2

www.accp.com    192.168.100.2

www.btest.com   192.168.100.2

配置步骤略

(9) 修改apache主配置文件httpd.conf,配置虚拟主机

定位到最后一行

修改listen参数为:

Listen 192.168.100.2:80

修改虚拟主机参数为:

Na</VirtualHost>

<VirtualHost 192.168.100.2:80>

DocumentRoot /var/www/xuni2

servername www.accp.com

</VirtualHost>

<VirtualHost 192.168.100.2:80>

DocumentRoot /var/www/xuni3

servername www.btest.com

</VirtualHost>

(10) 重新启动httpd服务,在客户端通过浏览器访问测试

http://www.benet.com/

http://www.accp.com/

http://www.btest.com/

##########分割线 建立系统用户的个人主页#####################

(1) 修改apache主配置文件httpd.conf,启用apache个人主页功能

确认主配置文件中有参数:

LoadModule userdir_module modules/mod_userdir.so

设置参数:

<IfModule mod_userdir.c>

UserDir public_html

</IfModule>

<Directory /home/*/public_html>

AllowOverride FileInfo AuthConfig Limit

Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec

<Limit GET POST OPTIONS>

Order allow,deny

Allow from all

</Limit>

<LimitExcept GET POST OPTIONS>

Order deny,allow

Deny from all

</LimitExcept>

</Directory>

(2) 建立系统用户,并建立个人主页测试文件

创建测试用户usera和userb

[root@www named]# su - usera

[usera@www ~]$ mkdir public_html

[usera@www ~]$ echo "UserA's Home Page" > public_html/index.html

[usera@www ~]$ chmod o+x /home/usera

[root@www named]# su - userb

[userb@www ~]$ mkdir public_html

[userb@www ~]$ echo "UserB's Home Page" > public_html/index.html

[userb@www ~]$ chmod o+x /home/userb

(3) 重新启动httpd服务

service httpd restart

(4) 在客户端浏览器中访问个人主页

http://www.benet.com/~usera/

http://www.benet.com/~userb/

###########分割线 使用awstats分析web日志信息#######

awstats相关目录和文件列表:

-----------------------------------------------------------------------

配置文件存放目录:/etc/awstats

网站配置文件范例:/etc/awstats/awstats.localhost.localdomain.conf

网站配置文件范例:/etc/awstats/awstats.model.conf

主目录:/usr/share/awstats

语言目录:/usr/share/awstats/lang

awstats工具目录:/usr/share/awstats/tools

默认的awstats根目录:/usr/share/awstats/wwwroot

/var/lib/awstats

/etc/cron.hourly/awstats

/etc/httpd/conf.d/awstats.conf

------------------------------------------------------------------------

(1) 拷贝awstats的软件包到当前的web服务器中

[root@www tool]# ls

awstats-6.9.tar.gz

(2) 解压并释放awstats软件包,并安装

[root@www tool]# tar zxvf awstats-6.9.tar.gz -C /usr/local    //解压软件包到/usr/local目录下

[root@www local]# mv awstats-6.9/ awstats            //更改软件包的名称

[root@www local]# cd /usr/local/awstats/tools/

[root@www tools]# ./awstats_configure.pl             //执行安装脚本

----设置apache主配置文件httpd.conf的路径

  /etc/httpd/conf/httpd.conf

----创建awstats配置文件

  Y

----定义日志分析的目标站点的名称

  www.benet.com

----定义awstats配置文件的存放目录(默认为/etc/awstats)

直接回车

----添加cron计划任务(在这里提示脚本无法自动添加,需要用户手动添加)

  直接回车

----按回车键退出安装脚本

(3) 修改awstats.www.benet.com脚本

cd /etc/awstats/

vi awstats.www.benet.com.conf

修改:

LogFile="/var/log/httpd/access_log"

(4) 创建数据库存放目录,并更新数据库

perl /usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update-config=www.benet.com

(5) 设置cron计划任务,以便定时运行日志分析程序

[root@www awstats]# crontab -e

* */3 * * * perl /usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update -config=wwww.benet.com

[root@www awstats]# service crond restart

(6) 在网页浏览器中查看分析报告

http://www.benet.com/awstats/awstats.pl?config=www.benet.com

每次访问输入的URL太长,建立的web页面来实现跳转

代码如下:

这样就可以通过http://www.benet.com/aw.html来访问了!

##########分割线 实现apache的访问控制#####

(1) 实现基于用户的访问控制

查看apache主配置文件httpd.conf,确认已经编译了基本认证和摘要认证的模块

LoadModule auth_basic_module modules/mod_auth_basic.so

LoadModule auth_digest_module modules/mod_auth_digest.so

(2) 修改主配置文件httpd.conf,实现对awstats目录区域的访问控制

<Directory "/usr/local/awstats/wwwroot">

Options None

AllowOverride None

Order allow,deny

Allow from all

authname "AWSTATS"

authtype basic

authuserfile /etc/httpd/conf/.htpasswd

require valid-user

</Directory>

(3) 创建存储认证用户帐号及口令文件

[root@www /]# useradd awuser

[root@www /]# htpasswd -c /etc/httpd/conf/.htpasswd awuser

(4) 重新启动httpd服务

service httpd restart

(5) 在客户端登陆测试

错误!超链接引用无效。

Llinux-apache安装的更多相关文章

  1. apache安装mod_deflate配置支持gzip

    apache 配置支持gzip apache使用gzip压缩能够大幅提高网站访问速度并节省网络流量,在网页响应头信息中可以判断是否支持压缩. HTTP/1.1 200 OK Date: Wed, 14 ...

  2. Apache安装

    记录安装Apache的流程,没有进行详细配置,只是记录搭建服务器的流程用于学习Ajax等知识,方便以后重新安装,不用每次都翻别人博客学习安装了,大神看到这里可以关掉这个粗糙简陋的博文了. 1. 官网上 ...

  3. Apache安装配置步骤

    注释:这里以Linux 红帽商业版为例~~~~~~~纯手打啊 Apache安装配置步骤 准备:关闭其他虚拟设备 #/etc/init.d/libvirtd stop #/etc/init.d/xend ...

  4. centos apache安装和设置

    分类: LINUX 安装方式:yum install httpdyum install mysql-serveryum install phpyum install php-mysql 一.WEB服务 ...

  5. centos下apache安装后无法访问

    2013.11.28遇到的问题: -------------------------------------- 一.centos下apache安装后无法访问 得查一下防火墙的问题 iptables添加 ...

  6. Apache安装完服务没有安装的情况

    安装完apache之后(不是按照默认路径安装的,例如是 D:\ )右下方哪个小羽毛图标是没有启动的,左键不好使,而且提示“No services installed”,提示服务器没有被安装.解决方法: ...

  7. linux 下apache安装、启动和配置

    linux 下 apache安装 1:系统安装,这里就不说了,网上有很多,也很简单.顺便说下,我用的是redhat 9: 2:在图形界面下下载apache 安装包,我下的是 httpd-2.2.9.t ...

  8. apache安装扩展模块

    apache 安装扩展模块 1,首先要确认你是否加载了mod_so模块,这个就是你在编译前参数配置的时候添加-enable-so(启用DSO).如果你没有这模块的话,是无法安装扩展模块的. /usr/ ...

  9. linux Apache安装

    原文:linux Apache安装 1.       下载apache,http://httpd.apache.org/download.cgi  通过这个官方网站,我们可以下到最新的版本.现在版本都 ...

  10. apache 安装[转]

    Apache简介         Apache HTTP Server(简称Apache)是Apache软件基金会的一个开放源码的网页服务器,可以在大多数计算机操作系统中运行,由于其多平台和安全性被广 ...

随机推荐

  1. Count Primes ——LeetCode

    Description: Count the number of prime numbers less than a non-negative number, n. 题目大意:给一个int,返回小于它 ...

  2. linux下安装python linux下一些常用的命令

    注意 ubuntukylin-14.04.2-desktop-amd64 自带python2.7.6 这个说的比较详细 http://wenku.baidu.com/link?url=gaeFcQrc ...

  3. 饭卡 (背包01 一维数组) http://acm.hdu.edu.cn/showproblem.php?pid=2546

    /* 从一组数据中选出n个数,使这n个数的和最接近一个值x, 背包问题, 从一系列菜中,从最贵的菜(MAX)之外中选出几个菜,使菜的总价格sum最接近money-5:money-sum-MAX; 钱数 ...

  4. [Locked] Longest Substring with At Most Two Distinct Characters

    Longest Substring with At Most Two Distinct Characters Given a string, find the length of the longes ...

  5. 动态规划——数位dp

    通过先前在<动态规划——背包问题>中关于动态规划的初探,我们其实可以看到,动态规划其实不是像凸包.扩展欧几里得等是具体的算法,而是一种在解决问题中决策的思想.在不同的题目中,我们都需要根据 ...

  6. Servlet的一些细节(1)

    1.  Servlet程序必须映射到一个URL地址 由于客户端是通过URL访问web服务器资源,所以Servlet程序必须映射到一个URL地址.这个工作在web.xml文件中使用<servlet ...

  7. Servlet的接口实现类

    Sun公司提供了两个默认实现类 GenericServlet和HttpServlet HttpServlet指能够处理Http请求的Servlet,它在原有的Servlet基础上添加了与HTTp相关的 ...

  8. 【转】WebStorm 2016 最新版激活(activation code方式)

    作者:=金刚=博客地址:http://www.cnblogs.com/woaic WebStorm 最新版本激活方式:今天下载最新版本的WebStorm,发现原来的通过license server激活 ...

  9. Fiddler 模拟post 提交

    在使用Fiddler 提交post表单的时候, 一定要加上以下code: Content-Type: application/x-www-form-urlencoded 意思为: 窗体数据被编码为名称 ...

  10. Windows下Postgre SQL数据库通过Slony-I 实现数据库双机同步备份

    一. 我们要实现的环境是windows xp.windows2003上安装Postgre SQL数据库,实现目的是两台数据库服务器进行数据库同步,即数据库同步更新.删除.插入等对数据库的操作. 二. ...