Apache的安装与配置

apahce的特点

功能强大、配置简单、速度快、应用广泛、性能稳定可靠,并可做代理服务器或负载均衡来使用

应用场合。

使用Apache运行静态HTML网页、图片(处理静态小文件能力不及Nginx);

使用Apache结合PHP引擎运行PHP、Perl等程序,LAMP被称为经典组合;

使用APache结合Tomcat、Resin运行JSP,Java等程序,成为中小企业的首选;

使用Apache作代理、负载均衡、rewrite规则过滤等等。

Apache的安装

版本:Apache 2.2.2

系统环境:CentOS 5.8

1.1、查看系统是否安装apache,若有则卸载:

查询:

rpm -aq httpd*  查看是否安装了Apache服务器

q 相当于query 查询

a相当于all

卸载:

rpm -e -nodeps http-2.2.2.........

e 等同于 -erase 表示移除

nodeps 英文解释为 dont do a depentdency check 不做软件间的依赖检查

注意,在CentOS6.5版本, 用yum remove apache* -y 来卸载

1.2、安装apache

(好习惯)创建目录:

mkdir /home/qingcong/tools

cd /home/qingcong/tools

(本人习惯将自己软件安装包均放在家目录里的tools下)

1.2.1、下载:

若联网,则用wget http://   方式来获取 软件包和KEY

若没有联网,可先在官网下载好apache2.2.3和KEY(验证文件),然后用rz -y 上传到tools目录

1.2.2、安装方式采用编译安装:

tar -zxvf httpd-2.2.22.tar 解压到当前目录

cd httpd-2.2.22

(编译)

./configure \

--prefix=/application/apache2.2.22 \

--enable-deflate \

--enable-expires \

--enable-headers \

--enable-modules=most \

--with-mpm=worker \

--enable-rewrite \

--enable-so

./configure 后的参数说明

--prefix=/application/apache2.2.22 表示指定安装的路径,若不指定,默认为[/usr/local/apache2]

--enable-deflate 提供对内容的压缩传输编码支持,一般html,js,css等内容的站点,使用此参数功能会大大提高传输速度,提升访问者访问体验。在生产环境中,这是Apache调优的一个重要选项之一。

--enable-expires 激活允许通过配置文件控制http的“Expires:”和"Cache-Control:"头内容,即对网站图片、js、css等内容,提供在客户端浏览器缓存的设置。这是Apache调优的一个重要选项之一

--enable-headers 提供允许对HTTP请求头的控制。

--with-mpm=worker 选择apache mpm的模式为worker模式,因worker模式原理是更多的使用线程来处理请求,所以可以处理更多的并发请求,而系统资源的开销小于基于进程的mpm prefork。如果不指定此参数,默认的模式是prefork进程模式。这是Apache调优的一个重要选项之一

--enable-rewrite 提供基于URL规则的重写功能。根据已知的URL,转换成其他想要的URL。如网页的伪静态功能就是这个模块实现的。这是Apache生产环境中比用的一个重要功能。

--enable-so 激活Apache服务的DSO(全程dynamic shared object,动态共享对象)支持,即以后可以以DSO的方式编译安装共享模块,这个模块本身不能以DSO方式编译。

在编译过程中,最后一行报错:

checking whether to enable mod_deflate... configure: error: mod_deflate has been requested but can not be built due to prerequisite failures

需要安装 devel

yum install devel  从yum源安装

也可以rz 上传,手动安装rpm -ivh zlib-devel-1.2.3-29.el6.x86_64.rpm 。

[[email protected]]# make

#执行编译命令

[[email protected]]# make install

#执行安装命令

[[email protected]]# ln -s /application/apache2.2.22 /application/apache

#此条命令为创建软连接,意义十分重大。这可是生产环境的经验体现。

将apache安装路径通过软链接的方式更改为/application/apache方便人类使用,当apache软件升级到新版本后,删除原来的软链接重新建立新的到/application/apache的软链接就好,在别的程序中如果有引用apache路径的地方,不需要做任何更改

查看apache安装情况:

/application/apache/bin/apachectl -l

启动apache服务:

/application/apache/bin/apachectl start

检查启动情况:

本网段内电脑浏览器输入:http://192.168.31.140  显示It works就正常了(注意,网址是服务的IP地址,安装在虚拟机上则是虚拟机的IP地址)

如果不出来it works的内容,请依次检查如下:

1、iptables和SELinux是否关闭:

2、检查httpd端口80是否存在:

netstat -lnt|grep 80

3、检查httpd进程是否存在

ps -ef|grep httpd

4、在服务器本地wget http://192.168.31.140 测试

注意:如果2/3都不符合要求,那4就不用检查了,肯定不行,直接5。

服务器本地wget测试,直接跳过防火墙的干扰来检查http服务

5、检查apache错误日志,看看是否有异常:

tail -200 /application/apache/log/error_log

1.3部署一个简单的web站点

apache的默认站点目录是安装目录下的/application/apache/htdocs,可以从主配置文件/appilcation/apache/conf/httpd.conf中查到:grep -i documentroot httpd.conf

此时,如果要部署网站服务,只需要把开发好的程序全部放置到htdocs下面即可

配置Apache基于域名的虚拟主机

1.开启主配置文件中包含httpd.conf文件的配置

Include conf/extra/httpd-vhosts.conf (原是用#注释了,去除#即可)

2.配置httpd-vhosts.conf

vi /application/apache/conf/extra/httpd-vhost.conf

<VirtualHost *:80>

ServerAdmin [email protected]

DocumentRoot "/data/www/blog"

ServerName blog.etiantian.org

ServerAlias etiantia.org

ErrorLog "logs/blog-error_log"

CustomLog "logs/blog-access_log" common

</VirtualHost>

配置httpd.conf文件

增加站点目录权限,否则报403错误

<Directory "/data/www/blog">

AllowOverride None

Options None

Order allow,deny

Allow from all

</Directory>

3.检查语法错误

/application/apache/bin/apachectl -t

4.重启Apache服务:

/application/apache/bin/apachectl graceful

注意:此处用的是graceful,而不是restart参数,graceful表示优雅的重启,重启时让访问的用户无感知,即重启时不会强行终端用户的访问请求,而是处理完毕后再重新启动。graceful在生产环境中非常重。

重启完检查一下

配置Apache基于IP的虚拟主机(生产环境中极少使用)

1.增加虚拟IP

ifconfig eth0:201 192.168.3.201 up

(删除:ifconfig eth0:201 192.168.3.201 down)

2.修改extra里面httpd-vhost.conf文件

<VirtualHost 192.168.3.201:80>

ServerAdmin [email protected]

DocumentRoot "/data/www/bbs"

ServerName 192.168.3.201

ServerAlias etiantia.org

ErrorLog "logs/bbs-error_log"

CustomLog "logs/bbs-access_log" common

</VirtualHost>

3.检查语法错误

/application/apache/bin/apachectl -t

4.重启Apache服务:

/application/apache/bin/apachectl graceful

注意:此处用的是graceful,而不是restart参数,graceful表示优雅的重启,重启时让访问的用户无感知,即重启时不会强行终端用户的访问请求,而是处理完毕后再重新启动。graceful在生产环境中非常重。

重启完检查一下

配置Apache基于不同端口的虚拟主机

1.修改conf文件下httpd-conf文件,增加端口

Listen 8091

Listen 8092

2.修改extra里面httpd-vhost.conf文件

<VirtualHost *:8091>

ServerAdmin [email protected]

DocumentRoot "/data/www/bbs"

ServerName 192.168.3.201

ServerAlias etiantia.org

ErrorLog "logs/bbs-error_log"

CustomLog "logs/bbs-access_log" common

</VirtualHost>

3.检查语法错误

/application/apache/bin/apachectl -t

4.重启Apache服务:

/application/apache/bin/apachectl graceful

注意:此处用的是graceful,而不是restart参数,graceful表示优雅的重启,重启时让访问的用户无感知,即重启时不会强行终端用户的访问请求,而是处理完毕后再重新启动。graceful在生产环境中非常重。

重启完检查一下

expires_modules(客户端浏览器访问缓存,是apache调优项之一)

安装:

1.编译安装Apache时候添加 --enable-expires

2.DOS方式编译安装到Apache中去:

首先进入Apache解压后的文件:

[[email protected] metadata]# cd /home/oldboy/tools/httpd-2.2.22/modules/metadata/

[[email protected] metadata]# ll mod_expires.c

-rw-r--r--. 1 500 500 18285 Nov 12  2008 mod_expires.c

安装:

[[email protected] metadata]#/application/apache/bin/apxs -c -i -a mod_exipres.so

检查:

[[email protected] metadata]# ll /application/apache/modules/mod_expires.so

-rwxr-xr-x. 1 root root 37398 Apr 11 16:34 /application/apache/modules/mod_expires.so

应用:

在conf/httpd_conf文件尾追加如下内容,所有虚拟主机和htdocs均生效

ExpiresDefault "access plus 12 month"

ExpiresByType text/html "access plus 12 months"

ExpiresByType text/css "access plus 12 months"

ExpiresByType image/gif "access plus 12 months"

ExpiresByType image/jpeg "access plus 12 months"

ExpiresByType image/jpg "access plus 12 months"

ExpiresByType image/png "access plus 12 months"

ExpiresByType application/x-shockwave-flash "access plus 12 months"

ExpiresByType application/x-javascript "access plus 12 months"

ExpiresByType video/x-flv "access plus 12 months"

在conf/extra/httpd-vhosts.conf中尾部追加,则所有虚拟主机生效

在conf/extra/httpd-vhosts.conf中<VirtualHost>里面添加,则对应的虚拟主机生效

mod_deflate(压缩传输,apache调优之一)

在httpd_conf尾追加如下,则所有虚拟主机和htdocs均生效

<ifmodule mod_deflate.c>

DeflateCompressionLevel 9

SetOutputFiler DEFLATE

AddOutputFilterByType DEFLATE text/html text/plain text/xml

AddOutputFilterByType DEFLATE application/javascript

AddOutputFilterByType DEFLATE text/css

</ifmodule>

时间: 2024-12-17 23:21:14

Apache的安装与配置的相关文章

Apache的安装部署配置

Apache HTTP Server(简称Apache)是Apache软件基金会的一个开放源码的网页服务器跨平台,高效和稳定 ,支持http超文本传输协议等多种服务功能 apache相关资源主配置文件 /etc/httpd/conf/httpd.conf子配置文件 /etc/httpd/conf.d/.conf默认发布目录 /var/www/html默认发布文件 index.html默认端口 80默认安全上下文 httpd_sys_content_t程序开启默认用户 apacheapache日志

Apache Tomcat安装、配置、启动与后续操作步骤

1.第一,我们在安装Apache Tomcat之前,我们首先安装和配置好jdk: 2.第二,我们要清楚自己的jdk版本.因为我们Apache Tomcat配置的成功的前提是版本相对应.在这里,博主是用下图的jdk版本: 所以,我们下载Apache Tomcat的时候也要找到Tomcat相应版本. 3.下载官方网址链接:http://tomcat.apache.org/download-70.cgi: 按照箭头指向的地方进行下载即可完成下载部分.PS:博主用的电脑是win7 32位的,所以读者们请

centos7 apache httpd安装和配置django项目

一.安装httpd服务 apache在centos7中是Apache HTTP server.如下对httpd的解释就是Apache HTTP Server.所以想安装apache其实是要安装httpd. httpd.x86_64 : Apache HTTP Server 安装: # yum install httpd 设置httpd服务开机启动 [[email protected] httpd]# /sbin/chkconfig httpd on Note: Forwarding reques

Web服务之Apache的安装及配置

"Apache HTTP Server"是开源软件项目的杰出代表,正式名称是"httpd",在Web服务器领域长期保持超过半数的配额,可以在Linux.UNIX.Windows等多种操作系统平台使用 Apache的主要特点 (1)开放源代码 (2)跨平台应用 (3)支持各种Web编程语言 (4)模块化设计 (5)运行稳定 (6)良好的安全性 安装httpd服务器 ? ? httpd服务器的安装方法可以选用RPM安装.源码编译安装两种方式,但是前者在功能上有些局限性,

Apache JMeter安装与配置

1.安装Java JDK Apache JMeter是基于Java库,运行Apache JMeter需要启动JVM进程,因此必须安装JAVA SE的JDK 2.进入官网,下载Apache JMeter安装文件 解压文件apache-jmeter-5.0.zip到D:\ProgramFiles\apache-jmeter-5.0 双击jmeter.bat或者以管理员方式运行 3.其他低版本需要配置环境变量 新建变量:JMETER_HOME=jmeter安装路径 配置classpath变量:%JME

PHP 和Apache的安装和配置

1. apache官网安装指南: http://jingyan.baidu.com/article/29697b912f6539ab20de3cf8.html 2. 官方安装包下载地址: http://archive.apache.org/dist/httpd/binaries/win32/ 命令:services.msc: 查看windows服务 httpd –w –n “Apache2.2” –k start: 启动http,如果启动apache服务出现错误,可以通过这个命令来显示httpc

Apache Httpd安装与配置

1.1 简介 Apache HTTP Server(简称Apache)是Apache软件基金会的一个开放源码的网页服务器,可以在大多数计算机操作系统中运行,由于其多平台和安全性[1]被广泛使用,是最流行的Web服务器端软件之一.它快速.可靠并且可通过简单的API扩展,将Perl/Python等解释器编译到服务器中. 功能包括目录索引.目录别名.内容协商.可配置的HTTP错误报告.CGI程序的SetUID执行.子进程资源管理.服务器端图像映射.重写URL.URL拼写检查以及联机手册等. Apach

linux ---apache的安装和配置

linux环境下的安装:yum安装和tar包安装 yum安装: 首先安装php环境 yum install php55w yum install php55w-mysql yum install php55w-imap yum install php55w-cli yum install php55w-xml 然后开始安装apache: yum install httpd 或者yum install httpd* 安装完毕 进行配置, apache的项目部署目录:/var/www/html下 配

Windows下Subversion和Apache的安装及配置(一)

1.序 Subversion可谓版本控制软件中的佼佼者,其开源性,易用性已受到众多软件开发者首选的版本控制软件.在这里我想记录我安装Subversion和Apache的过程.注意,Subversion的版本需要相对应的版本Apache.不用担心,这个网址里有说明. 2. 安装Apache 2.1 下载Apache,网址 2.2 安装 一路Next按钮即可,其中Emai可以随便填,有个选择端口的地方,你可以用默认的80端口,也可以用8080.如下图.直到安装成功为止. 2.2 测试Apache 打