RHEL6系统LAMP平台之Apache配置全攻略

0
Apache配置全攻略(1)[点此添加]
-
-
LAMP平台介绍,Apache配置基于域名、IP地址、端口的虚拟主机,Apache压力测试工具
LAMP架构是目前最为成熟的一种企业网站应用模式之一,指的是协同工作的一整套系统和相关软件,能够提供动态Web站点服务及其应用开发环境。LAMP是一个缩写,具体包括:Linux操作系统,Apache网站服务器,MySQL数据库服务器,PHP(或Perl,Python)编程语言。
在LAMP平台的四个构成组件中,每一个组件都承担着一部分关键应用。各组件的主要作用如下:
& Linux:作为LAMP架构运行的基础,提供用于支撑Web沾点的操作系统平台,能够与AMP组件提供良好的兼容性
& Apache:作为LAMP架构的前端,是一款功能强大、稳定的Web服务器程序
&MySQL:作为LAMP架构的后端,是一款流行的开源关系数据库系统。
&PHP/Perl/Python:作为三种开发动态网页的编程语言,负责解释Web站点中的动态页面并提供开发环境。其中PHP是一种被广泛应用的开放源代码的多拥堵脚本语言,它可以嵌入到HTML中,尤其适合Web应用开发

下面为大家详细介绍下Red Hat Enterprise Linux6系统编译安装Apache的步骤和配置:
Apache组件基于标准的HTTP网络协议提供网页浏览服务,即Web服务,HTTP是应用级的协议,主要用于分布式、协作的信息系统。HTTP协议是通用的、无状态的,其系统的建设和传输与数据无关。HTTP也是面向对象的协议,可以用于各种任务,包括名字服务、分布式对象管理、请求方法的扩展、命令等。在Internet上,HTTP通信往往发生在TCP/IP连接上,其默认的端口为80,也可以使用其他端口。。Apache服务器可以运行在Linux、UNIX、Windows等多种操作系统平台中。其主要特点包括:开放源代码、跨平台使用、支持各种网页编程语言、模块化设计、运行稳定和有良好的安全性。Apache的安装方式有两种:RPM包安装和编译安装,下面为Red Hat Enterprise Linux6系统编译安装Apache的步骤和配置:
自己可以去去http://httpd.apache.org/download.cgi 下载最新的Apache源码包
一、安装步骤:
1.解压并释放源码包:
# tar -zxf httpd-2.4.2.tar.gz -C /usr/src/
# cd /usr/src/httpd-2.4.2/
2.配置编译选项(有可能编译失败提示PCRE错误,我们可以执行yum install pcre* -y 就Ok):
#./configure --prefix=/usr/local/apache2 --enable-so --enable-rewrite --enable-ssl --with-ssl=/usr/lib --enable-auth-digest --enable-cgi --enable-suexec --with-suexec-caller=daemon --with-suexec-docroot=/usr/local/apache2/htdocs
3.编译服务器程序:
#make
4.安装已编译完成的程序
#make install

二、配置:
1.构建基本可用的Web服务器
# vi /usr/local/apache2/conf/httpd.conf
ServerName www.55linux.com:80
# /usr/local/apache2/bin/apachectl start
访问www.55linux.com(或者访问Apache服务器IP),出现It works!表示成功


添加Apache默认启动项:
# cp /usr/local/apache2/bin/apachectl /etc/rc.d/init.d/httpd
# ln -s /etc/rc.d/init.d/httpd /etc/rc.d/rc5.d/S85httpd
# vi /etc/rc.d/init.d/httpd                   \\添加两行注释
# chkconfig: 345 85 15
# description: Apache
# chkconfig httpd on                               \\现在可以通过service命令启动和停止httpd服务了

2.构建基于域名的虚拟Web主机
# cd /usr/local/apache2/conf/htdocs/
#mkdir 55linux yeacome
# echo "www.55linux.com" > 55linux/index.html
# echo "bbs.yeacome.com" > yeacome/index.html
# vi /usr/local/apache2/conf/httpd.conf
NameVirtualHost 220.194.52.154

    DocumentRoot "/usr/local/apache2/htdocs/55linux"
    ServerName www.55linux.com
    ErrorLog "logs/www.55linux.com.error_log"
    CustomLog "logs/www.55linux.com.access_log" common


    DocumentRoot "/usr/local/apache2/htdocs/yeacome"
    ServerName bbs.yeacome.com
    ErrorLog "logs/bbs.yeacome.com.error_log"
    CustomLog "logs/bbs.yeacome.com.access_log" common

重启服务,在客户端浏览器中访问测试:
#service httpd restart

3.构建基于IP地址的虚拟主机:
# cd /usr/local/apache2/conf/htdocs/
#mkdir 55linux yeacome
# echo "www.55linux.com" > 55linux/index.html
# echo "bbs.yeacome.com" > yeacome/index.html
# vi /usr/local/apache2/conf/httpd.conf

    DocumentRoot "/usr/local/apache2/htdocs/55linux"
    ServerName www.55linux.com
    ErrorLog "logs/www.55linux.com.error_log"
    CustomLog "logs/www.55linux.com.access_log" common


    DocumentRoot "/usr/local/apache2/htdocs/yeacome"
    ServerName bbs.yeacome.com
    ErrorLog "logs/bbs.yeacome.com.error_log"
    CustomLog "logs/bbs.yeacome.com.access_log" common

重启服务,在客户端浏览器中访问测试:
#service httpd restart

3.构建基于端口的虚拟主机:
# cd /usr/local/apache2/conf/htdocs/
#mkdir 55linux yeacome
# echo "www.55linux.com" > 55linux/index.html
# echo "bbs.yeacome.com" > yeacome/index.html
# vi /usr/local/apache2/conf/httpd.conf
Listen 220.194.52.158:80
Listen 220.194.52.158:8080

    DocumentRoot "/usr/local/apache2/htdocs/55linux"
    ServerName www.55linux.com
    ErrorLog "logs/www.55linux.com.error_log"
    CustomLog "logs/www.55linux.com.access_log" common


    DocumentRoot "/usr/local/apache2/htdocs/yeacome"
    ServerName bbs.yeacome.com
    ErrorLog "logs/bbs.yeacome.com.error_log"
    CustomLog "logs/bbs.yeacome.com.access_log" common

重启服务,在客户端浏览器中访问测试:
#service httpd restart
注释:上面的所有的主机,可以去掉httpd.conf文件中
#Include conf/extra/httpd-vhosts.conf        此行的注释,然后所有的配置可以写到/usr/local/apache2/conf/extra/httpd-vhosts.conf此文件中,其跟写在httpd.conf文件中一样。


4.基于用户的目录访问权限:
建立口令文件
#htpasswd -c /usr/local/apache2/.htpasswd
添加用户
#htpasswd /usr/local/apche2/.htpasswd 55linux
修改用户密码
#htpasswd /usr/local/apche2/.htpasswd 55linux
建立虚拟目录并配置用户认证
Alias /.htpasswd "/usr/local/mysecret“

AuthType Basic
AuthName "This is a private directory. Please Login:"
AuthUserFile /usr/local/apche2/.htpasswd
Require valid-user 55linux

重启服务进行验证:service httpd restart

三、测试httpd服务器的性能:
httpd服务自带了一个压力测试工具AB(Apache Benchmark),用于检测Web沾点的性能表现。命令使用格式如下:
ab  [-q] -c 并发连接数 -n 总的请求数 http://域名
注意:指定的并发连接数不能大于总的请求数

本文固定链接:http://www.55linux.com/app/web/19.html | 55linux