Apache网站服务基础
1.Apache简介
Apache HTTP Server是开源软件项目的杰出代表,基于HTTP网络协议提供网页浏览服务,在Web服务器领域长期保持超过半数的份额,Apache服务器可以运行在Linux,UNIX,windows等多种操作系统。
2.Apache的起源
Apache服务器是指对之前诺干个web服务器进行整合,完善后的软件,名称来源于“A Pachey Server”,的意思基于原有的web服务器代码进行修改(补丁)后形成的服务器程序。
1995年,Apache服务程序的1.0版本发布后,一直由“Apache Group”负责该项目管理和运维;直到1999年,目前,Apache项目·一直由ASF负责管理和维护。
1
“Apache HTTP Server” 是ASF旗下著名软件之一,正式名称是“httpd”,也就是历史上的Apache网站服务器。
3.Apache的主要特点
Apache服务器是在性能和安全方面比较突出的,主要特点包括以下几个方面。
①开放源代码:由全世界开发者共同维护
②跨平台应用:所有UNIX操作系统,可以良好运行在绝大多数windows系统平台中。
③支持多种网页编程语言:Apache支持编程语言包括Perl,PHP,Python,Java等
④模块化设计 :这为Apache带来了良好的扩展性,可以选择性添加Apache本身不具有的其他功能。
⑤运行稳定:Apache服务器可用于建构具有大负载访问量的web站点。
⑥良好的安全性:这是开源软件同有的特性,并且发现漏洞,Apache维护团队会及时提供漏洞补修程序。
4.Apache的主要版本
1.x
目前最高版本是1.3,运行稳定
向下兼容性较好,但缺乏一些较新的功能
2.x
目前最高版本是2.4
具有更多的功能特性
与1.X相比,配置管理风格存在较大差异
实验安装并基础配置httpd服务器
1.安装httpd服务器
1)先去官网下载源码包,参考地址:http://httpd.apache.org/download.cgi,我下载的格式是.gz。
2)Apache需要apr,pcre等软件的支持所以需要安装Apache的依赖包,依赖包如下:
rpm -ivh apr-1.4.8-3.el7.x86_64.rpm
rpm -ivh apr-devel-1.4.8-3.el7.x86_64.rpm
rpm -ivh apr-util-devel-1.5.2-6.el7.x86_64.rpm
rpm -ivh apr-util-1.5.2-6.el7.x86_64.rpm
rpm -ivh cyrus-sasl-devel-2.1.26-20.el7_2.x86_64.rpm
rpm -ivh expat-devel-2.1.0-8.el7.x86_64.rpm
rpm -ivh libdb-devel-5.3.21-19.el7.x86_64.rpm
rpm -ivh openldap-devel-2.4.40-13.el7.x86_64.rpm
rpm -ivh pcre-devel-8.32-15.el7_2.1.x86_64.rpm
rpm -ivh pcre-8.32-15.el7_2.1.x86_64.rpm
3)源码编译及安装
解包
[root@localhost ~]# tar zxf httpd-2.4.41.tar.gz -C /usr/src/
[root@localhost ~]# cd /usr/src/httpd/
/解压释放到/usr/src/并进入源码包目录/
配置
[root@localhost httpd-2.4.41]# ./configure --prefix=/usr/local/httpd
–enable-so
–enable-rewrite
–enable-charset-lite
–enable-cgi
–prefix:指定安装目录
–enable-so :启动动态加载模块支持
–enable-rewrite:启动网页地址重写功能,用于优化及目录迁移维护
–enable-charset-lite:启动字符集功能,以便支持各种字符集,编辑网页
–enable-cgi:启动CGI脚本程序,便于扩展网站应用访问能力
4)编译安装
执行“make”将源代码转换为可执行的程序
[root@localhost httpd-2.4.41]# make
[root@localhost httpd-2.4.41]# make install
5)确认安装结果
查看安装目录:/usr/local/httpd
[root@localhost ~]# ls /usr/local/httpd/
bin build cgi-bin conf error htdocs icons
include logs man manual modules
服务目录:/usr/local/httpd/
主配置文件:/usr/local/httpd/conf/httpd.conf
网页目录:/usr/local/httpd/htdocs/
服务脚本:/usr/local/httpd/bin/apachectl
执行程序:/usr/local/httpd/bin/httpd
访问日志: /usr/local/httpd/log/access_log
错误日志: /usr/local/httpd/log/error_log
基础配置
1)优化执行路径
通过源码安装的httpd服务,默认不在搜索路径中,为了使用该服务时方便,可以添加符号链接。
ln -s /usr/local/httpd/bin/* /usr/local/bin
ls -l /usr/local/bin/httpd /usr/localbin/apachectl
添加链接后可以执行httpd-v(查看版本号)测试链接,执行httpd-v就相当于执行“/usr/local/httpd/bin/httpd-v”
2)启动httpd服务
[root@localhost httpd]# /usr/local/httpd/bin/apachectl stop /停止服务/
[root@localhost httpd]# /usr/local/httpd/bin/apachectl start /开启服务/
[root@localhost httpd]# netstat -anput |grep httpd /查看/
3)httpd.conf配置文件(常用全局配置参数)
ServerRoot:httpd服务根目录
Listen:监听的IP地址、端口号
User:运行服务的用户身份
Group:运行服务的组身份
ServerAdmin:管理员邮箱
ServerName:网站服务器的域名
DocumentRoot:网页文档的根目录
DirectoryIndex:默认的索引页文件
ErrorLog:设置错误日志文件的路径
LogLevel:记录日志的级别,默认为warn
CustomLog:访问日志文件的位置
PidFile:保存httpd进程PID号的文件
AddDefaultCharset:设置站点中的网页默认使用的字符集编码
Timeout:网络连接超时,默认为300秒
KeepAlive:是否保持连接,可选On或Off
MaxKeepAliveRequests:每次连接最多请求文件数
KeepAliveTimeout:保持连接状态时的超时时间
Include:需要包含进来的其他配置文件
修改httpd.conf文件配置内容以后建议使用apachectl -t语法检查是否修改存在错误。
apachectl -t /语法检查/
Syntax OK /返回信息/