多学一点(五)——在Linux下安装配置Apache

1.下载、安装apache

在 apache 官网下载apache 的源码包:

[[email protected] src]#wget http://mirrors.cnnic.cn/apache/httpd/httpd-2.2.27.tar.bz2

编译安装源码包:

[[email protected] src]#tar -jxvf httpd-2.2.27.tar.bz2

[[email protected]]# cd httpd-2.2.27

[[email protected] httpd-2.2.27]#./configure --prefix=/opt/apache

[[email protected]]# make

[[email protected]]# make install

在编译过程中如果出现缺少 lib 的情况可以使用 yum 来安装缺少的 lib,每一步执行完成后,可以使用如下命令检测上一步是否执行成功:

[[email protected]]# echo $?

如果显示为 0,表示上一条命令执行成功,如果显示非 0,则表示上一条命令执行失败,需要查看上一条命令的执行信息找到失败原因。

2.启动与停止 apache

安装完成后,使用如下命令可以启动 / 停止 / 重启 / 优雅停止 / 优雅重启:

[[email protected] httpd-2.2.27]#cd /opt/apache

[[email protected]]# ./bin/apachectl start

[[email protected]]# ./bin/apachectl stop

[[email protected]]# ./bin/apachectl restart

[[email protected]]# ./bin/apachectl graceful-stop

[[email protected]]# ./bin/apachectl graceful

所谓的优雅停止和优雅重启,可以简单的理解为使用 kill -15 停止 httpd 进程,而停止和重启可以理解为使用 kill -9 停止 httpd 进程。

为了使用方便,我们可以将 apache 的启动 / 停止等操作配置成服务:

[[email protected]]# cp -p bin/apachectl /etc/init.d/apache

[[email protected]]# chmod 755 !$

[[email protected]]# vim !$

在第二行添加如下一行:

# chkconfig: 3581 93

之后保存退出。其中,第一组数字 35 指定该服务在 Linux 的那些运行级别下启动(0- 6),可以指定多个;第二组数字 81 指定服务启动的优先级;第三组数字 93 指定服务关闭的优先级,这些优先级可以手动指定,最好不要与已有服务的优先级相同,当然如果相同也不会有问题。这里用到的是 Linux 系统启动流程部分的知识,在之前已经介绍过,具体可以参考下面这篇博客,地址如下:

http://xitongjiagoushi.blog.51cto.com/9975742/1621852

修改完成后,使用chkconfig 命令将其添加到服务中:

[[email protected]]# chkconfig --add apache

[[email protected]]# chkconfig apache on

之后我们就可以用服务的方式来对 apache 进行启动 / 停止 / 重启 / 优雅停止 / 优雅重启的操作了:

[[email protected] apache]#service apache start  //stop restart graceful 等

注:在启动 apache 时,有可能会报如下两个错误——

错误一:

(98)Addressalready in use: make_sock: could not bind to address [::]:80

(98)Addressalready in use: make_sock: could not bind to address 0.0.0.0:80

no listeningsockets available, shutting down

Unable to openlogs

出现这种错误的原因是apache 默认的 80 端口已经被其他进程占用了,必须做修改,否则 apache 启动失败,使用

[[email protected]~]# netstat -antp | grep 80

查看占用该端口的进程是什么(一般是 tomcat)。解决这个问题显而易见有两种方法,一种方法是修改 tomcat 使用的端口后重启 tomcat,在之前的博客中介绍过,即修改tomcat/conf/server.xml 文件;另一种方法是修改 apache 的默认端口,即修改apache/conf/httpd.conf 文件中 Listen 部分,默认如下:

Listen 80

修改为任一没有被占用的端口,如使用 8081 端口:

Listen 8081

保存退出,重启apache 即可。

错误二:

httpd: Could notreliably determine the server‘s fully qualified domain name, using ::1 forServerName

出现这种错误的原因是在配置文件中没有明确指定 ServerName ,这种错误并不是必现的,而且不会影响正常使用,但是作为强迫症我们当然也要改正过来。修改 apache/conf/httpd.conf ,将其中注释掉的ServerName 取消注释,修改前:

# ServerName www.example.com:80

修改后:

ServerName www.example.com:80

保存退出,重启apache 即可。

3.配置 apache

在第 2 部分中已经提到了如何配置 apache 启动端口,即修改apache/conf/httpd.conf 文件中的 Listen部分。除此之外,我们还可以通过修改该文件配置静态文件(html 、 js 、 css 等)的存放位置(默认将要发布的内容放到 apache/htdocs/ 目录下),配置 log 级别、log 存放位置等,先留个位置,之后在用到时再来写这部分的具体内容。

4. apache tomcat 的异同:

apache 是 web 服务器,用来静态解析,如 html 等,作用和 nginx 大体相同,关于 apache 和 nginx 的比较网上已经有了很多文章,有兴趣可以参考。

tomcat 是 java 应用服务器,用来动态解析,如 jsp php等。tomcat 可以认为是 apache 的扩展,可以独立于 apache 运行。

补充:

(1)apache是普通服务器,本身只支持html即普通网页,可以通过插件支持 php,还可以与 tomcat 连通(apache单向连接tomcat,就是说通过apache可以访问tomcat资源,反之不然)。

(2)apache只支持静态网页,但像asp 、 jsp 、 php 、 cgi等动态网页就需要tomcat来处理。

(3)apache 可以和 tomcat 整合使用,如果客户端请求的是静态页面,则只需要apache 服务器响应请求;如果客户端请求动态页面,则是 tomcat服务器响应请求,将解析的 jsp 等网页代码解析后回传给 apache 服务器,再经 apache 返回给浏览器端。这是因为jsp是服务器端解释代码的,tomcat 只做动态代码解析,apache 回传解析好的静态代码,apache + tomcat 这样整合就可以减少 tomcat的服务开销。

(4)apache 和 tomcat 是独立的,在同一台服务器上可以集成。

时间: 2024-10-29 19:11:19

多学一点(五)——在Linux下安装配置Apache的相关文章

Linux下安装配置Apache服务器

Linux下安装配置Apache服务器 1. 安装Apache [[email protected] ~]# yum –y install httpd 2. 启动Apache [[email protected] ~]# systemctl start httpd 3. 查看进程 [[email protected] ~]# systemctl status httpd httpd.service - The Apache HTTP Server Loaded: loaded (/usr/lib

Linux下安装配置Apache+PHP+MariaDB

一.安装apache 1.下载并安装apache yum install httpd 2.启动apache systemctl start httpd.service 3.停止apache systemctl stop httpd.service 4.重启apache systemctl restart httpd.service 5.将apache设置为开机启动 systemctl enable httpd.service 二.安装php 1.下载php yum install php 2.安

linux下安装配置tomcat以及tomcat开机自启配置

Linux下Tomcat安装配置以及Windows不能连接服务器Tomcat解决方案 一.从官方网站上下载tomcat软件包. 官网地址: http://tomcat.apache.org/ 点击左侧的 download的一个版本,我选择的是 tomcat7.0,选择一个后缀名为.tar.gz文件直接下载到本地. 二.通过工具SSH Secure 上传至linux服务器中,进行解压 解压tomcat压缩文件: #tar zxvf apache-tomcat-7.0.53.tar.gz 将解压后的

(转载)Linux下安装配置MySQL+Apache+PHP+WordPress的详细笔记

Linux下安装配置MySQL+Apache+PHP+WordPress的详细笔记 Linux下配LMAP环境,花了我好几天的时间.之前没有配置过,网上的安装资料比较混乱,加上我用的版本问题,安装过程中出现了一些错误,经过好几次安装,翻了好多资料,最后找出问题的所在,才把环境搭建好,对于高手来说,这或许不算什么,但对于一个刚入门的新人,却是不一样了,这篇文章记录着我的一些笔记,希望对于那些刚刚入门的人们有所帮助,仅作为参考. 安装首先我们得获得MySQL,Apache,PHP,WordPress

Linux下安装配置Nexus

一.安装和运行nexus 1.下载nexus:http://www.sonatype.org/nexus/go 可选择tgz和zip格式,以及war,选择tgz或zip时不同版本可能在启动时存在一定问题,可能是因为jdk版本问题,若无法启动请选择2.5或更早的版本 注:nexus 2.6版本之后不再支持jdk1.6 2.安装nexus 若下载war,则将其放置tomcat下的webapp目录中,改名为nexus,运行tomcat服务,即可访问http://localhost:8081/nexus

在linux下安装配置Initiator

在linux下安装和配置Initiator 环境 : 开启虚拟机,安装有linux操作系统. 首先打开linux操作系统,进入后使用命令ifconfig –a查看ip地址 在windows下安装安装有SecureCRT 7.1软件或者putty来进行远程控制     在linux下安装Initiator [[email protected] ~]# mkdir -p /mnt/cdron 创建目录并将光盘挂载到/mnt/cdrom目录下 [[email protected] ~]# mount

linux 下安装配置jboss as7以及部署应用

linux 下安装配置jboss as7以及部署应用 1.测试平台及软件 centos 5.4 jdk-7u5-linux-i586.rpm jboss-as-7.1.1.Final.zip jboss-as-quickstarts-7.1.1.CR2-dist.zip apache-maven-3.0.4-bin.tar.gz 2.安装相关软件 a.安装jdk [[email protected] ~]# chmod +x jdk-7u5-linux-i586.rpm [[email prot

linux下安装配置DHCP服务器

前提是已经安装了 core 及 base 两个组 # cat /etc/redhat-release   Red Hat Enterprise Linux Server release 6.4 (Santiago)   # uname -a  Linux localhost.localdomain 2.6.32-358.el6.x86_64 #1 SMP Tue Jan 29  11:47:41 EST 2013 x86_64 x86_64 x86_64 GNU/Linux 修改本机IP为静态获

Kali Linux下安装配置ProFTPD实例

1,安装ProFTPD 在ftp://ftp.proftpd.org/下可以找到官方发布的各个ProFTPD版本,本人使用ftp://ftp.proftpd.org/historic/source/proftpd-1.3.0a.tar.gz [email protected]:~# wget ftp://ftp.proftpd.org/historic/source/proftpd-1.3.0a.tar.gz [email protected]:~# tar –xf proftpd-1.3.0a