本以为linux下安装apache是件很简单的过程。三命令就可以搞定,jxvf解压,make 编译,make install 安装就OK了。没想到这个过程还颇费周折。可能和环境有关吧。先说一下我的环境。

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

linux :    cenos5.5  (验证4.8也会碰到以下问题)

apache:  httpd-2.4.1.tar.bz2

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

[root@localhost apache]# tar jxvf httpd-2.4.1.tar.bz2      //解压apache的压缩包
[root@localhost apache]# cd httpd-2.4.1       //定位到httpd-2.4.1 文件夹下
[root@localhost httpd-2.4.1]# ls       //查看显示httpd-2.4.1 文件夹下内容
[root@localhost httpd-2.4.1]#./configure --help | more      //查看安装apache配置参数
[root@localhost httpd-2.4.1]#./configure  --prefix=/usr/local/apache  --enable-so      //  配置apache路径 ,后面跟 --enable-so 参数表示让apache核心装载DSO

[root@localhost httpd-2.4.1]# make   //编译apache

出错了!提示:

configure: error: APR not found. Please read the documentation 

在apache官网上可以下载到 apr-1.4.6.tar.gz

解决apr not found问题>>>> 

APR和APR-UTIL的下载地址:http://apr.apache.org/download.cgi

[root@localhost apache]# tar -zxf apr-1.4.6.tar.gz

[root@localhost apache]# cd apr-1.4.6

[root@localhost apr-1.4.6]# ./configure --prefix=/usr/local/apr

[root@localhost apr-1.4.6]# make

[root@localhost apr-1.4.6]# make install

安装完成后,再来编译apache

[root@localhost httpd-2.4.1]# make

又出错了!提示:

configure: error: APR-util not found. Please read the documentation 

好吧!还是上面的apache官网地址再下载 apr-util-1.4.1.tar.gz

解决APR-util not found问题>>>>

[root@localhost apache]# tar -zxf  apr-util-1.4.1.tar.gz

[root@localhost apache]#  cd  apr-util-1.4.1

[root@localhost apr-util-1.4.1]# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/bin/apr-1-config

[root@localhost apr-util-1.4.1]# make
  [root@localhost apr-util-1.4.1]# make install

再来编译apache ,再次出错!提示:

configure: error: pcre-config for libpcre not found. PCRE is required and available from http://pcre.org/ , 我X !linux 安装软件之间关联性有时能让人崩溃。

../configure仍提示APR-util not found,增加--with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util后出现>>>>>

[root@localhost apache]# ./configure –help | grep pcre

--with-pcre=PATH        Use external PCRE library
下载地址:http://ftp.exim.llorien.org/pcre/

下载pcre-8.30.zip ,列表文件较多,一般浏览器会有搜索功能,你可ctrl+f 搜索定位后下载。

[root@localhost apache]#unzip -o pcre-8.30.zip

[root@localhost apache]#cd pcre-8.30

[root@localhost pcre-8.30]#./configure --prefix=/usr/local/pcre

[root@localhost pcre-8.30]#make

[root@localhost pcre-8.30]#make install

编译Apache

[root@yahoo httpd-2.3.12-beta]# ./configure --prefix=/usr/local/apache2  --with-apr=/usr/local/apr  --with-apr-util=/usr/local/apr-util/ 

  注意,这里后面跟的参数,一定要与前面安装apr 和apr-util的路径一致。

[root@localhost httpd-2.4.1]# make
 [root@localhost httpd-2.4.1]# make install

这次编译安装应该不会再报任何错误了。哈哈!!

启动apache

[root@localhost bin]# pwd

/usr/local/apache/bin

[root@localhost bin]# apachectl stop  停止

[root@localhost bin]# apachectl start  启动

查看80端口是否被占用

[root@localhost conf]#netstat -an | grep :80

查看apache 启动服务是否启动

[root@localhost bin]# ps -aux | grep httpd

Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.7/FAQ

root      2866  0.0  1.2  25164  9556 ?        Ss   22:45   0:00 /usr/sbin/httpd -k start

apache    2867  0.0  0.7  25300  5556 ?        S    22:45   0:00 /usr/sbin/httpd -k start

apache    2868  0.0  0.6  25300  5444 ?        S    22:45   0:00 /usr/sbin/httpd -k start

apache    2869  0.0  0.6  25300  5444 ?        S    22:45   0:00 /usr/sbin/httpd -k start

apache    2870  0.0  0.7  25300  5556 ?        S    22:45   0:00 /usr/sbin/httpd -k start

apache    2871  0.0  0.6  25164  4796 ?        S    22:45   0:00 /usr/sbin/httpd -k start

apache    2872  0.0  0.6  25164  4796 ?        S    22:45   0:00 /usr/sbin/httpd -k start

apache    2873  0.0  0.6  25164  4796 ?        S    22:45   0:00 /usr/sbin/httpd -k start

apache    2874  0.0  0.6  25164  4796 ?        S    22:45   0:00 /usr/sbin/httpd -k start

root      3141  0.0  0.0   4244   676 pts/1    R+   22:48   0:00 grep httpd

下面访问一下apache默认页是否能打开。http://ip:80/index.html

又提示了错误:

难道是端口被占用了?修改apache的配置文件

/usr/local/apache/conf/httpd.conf  配置文件

[root@localhost conf] vi httpd.conf

找到下面一行:

Listen 80   把80改成其它端口,如8080 、8800 只要没被占用就行。

找到下面一行:

ServerName www.example.com:80   改成本机ip加端口号,如:192.168.0.105:80

  端口改来改去,一直都报那个错误。由于之前没有在linux下安装apache的经验,与是想找一下apache默认运行的哪个页面。于是,找到了,..../apache/htdocs/index.html 文件(受tomcat的误导)!其实不然,真正运行的是 /var/www/html 目录下的文件

You don't have permission to access /index.html on this server

真正的错误在这句提示上。因为我方位的文件权限不足够。那给文件加个权限吧!

在/var/www/html 创建个文件index.html

[root@localhost html]# chmod 766 index.html

Ok!再来方位apache ,页面正常打开了!过程很纠结,结局很美好!

-----------小结--------------

需要安装的文件:

apr-1.4.6

apr-util-1.4.1.tar.bz2

pcre-8.30.zip

/usr/local/apache     apache的安装目录

/usr/local/apache/conf/httpd.conf    配置文件

/usr/local/apache/bin/ apachectl   stop/start    停止/启动程序

/var/www/html/    在这个文件夹下创建可以访问的页面

linux安装apache的纠结过程的更多相关文章

  1. linux安装apache软件的过程

    参考官方安装指导:http://httpd.apache.org/docs/2.4/install.html 1.下载依赖包 apr/apr-util/pcre 2.解压依赖包 3.安装apr 进入安 ...

  2. linux安装apache

    我的linux是用阿里云上的,版本是CentOS 6.5 apache依赖于apr.apr-util和pcre,所以需要先安装这三个 apr(包含apr.apr-util和apr-iconv)是apa ...

  3. linux 安装 apache

    1.  系统基本信息 CentOS  6.4   内存2G  硬盘 200G   cpu 4核  (cat /proc/cpuinfo |grep 'processor'|wc -l  查看cpu核数 ...

  4. 【问题记录】 Linux 安装 apache 遇到的一些问题

    以下为linux上安装apache时自己遇到的一些问题,记录在这,以后遇到时也会不定时更新... 一.安装Apache提示APR not found的解决办法 解决方法: 1. 网站 http://a ...

  5. Linux安装Apache报错:Cannot find a valid baseurl for repo: base/7/x86_64解决方案

    最近使用CentOS7学习,安装安装Apache时候,使用yum安装Apache报错:本文适合CentOS7和RHEL7 # yum install httpd 出现:cannot find a va ...

  6. LInux——安装Apache

    在安装Apache的httpd的时候经常会遇到: configure: error: APR not found .  Please read the documentation. configure ...

  7. Linux安装pytorch的具体过程以及其中出现问题的解决办法

    1.安装Anaconda 安装步骤参考了官网的说明:https://docs.anaconda.com/anaconda/install/linux.html 具体步骤如下: 首先,在官网下载地址 h ...

  8. Linux安装apache服务

    1.通过yum包下载安装httpd yum -y install httpd*(等待安装) 到下面就安装完毕 2.启动apache服务 service httpd restart 3.现在就可以查看a ...

  9. linux 安装Apache服务器

    这篇文章先别看,,有些地方我不是很明白,写错了一些地方,正在咨询会linux的大神 安装好Apache就可以用Http访问或者下载电脑的文件了 我还是用 连接我的linux电脑 咱把Apache安装到 ...

随机推荐

  1. Maximum Gap

    Given an unsorted array, find the maximum difference between the successive elements in its sorted f ...

  2. iOS 和 Android 中的后台运行问题

    后台机制的不同,算是iOS 和 Android的一大区别了,最近发布的iOS7又对后台处理做了一定的更改,找时间总结一下编码上的区别,先做个记录. 先看看iOS的把,首先需要仔细阅读一下Apple的官 ...

  3. msysgit ls 中文显示

    2013年10月17日 14:54:15 安装了新版的msysgit后,在其自带的 git bash 命令行下就可以输入中文汉字了 但是创建了中文名字命名的文件后,再用 ls 命令查询时会出现乱码的情 ...

  4. Lubuntu下配置Python开发环境

    安装完系统必须要做的几件事: 一.更新软件    (如果是通过最新版镜像安装,可无视此步骤)    1.选择速度比较快的源,默认的源速度不一定快.二.配置终端    1.设置终端背景,前景色,透明度  ...

  5. HDU 5795 A Simple Nim (博弈) ---2016杭电多校联合第六场

    A Simple Nim Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Tota ...

  6. RedHat中敲sh-copy-id命令报错:-bash: ssh-copy-id: command not found

    RedHat中敲sh-copy-id命令报错:-bash: ssh-copy-id: command not found 在多台Linux服务器SSH相互访问无需密码, 其中进入一台Linus中,对其 ...

  7. Instruments_Automation使用入门

    Instruments 是应用程序用来动态跟踪和分析 Mac OS X 和 iOS 代码的实用工具. 这是一个灵活而强大的工具,它让你可以跟踪一个或多个进程,并检查收集的数据. 这样,Instrume ...

  8. 禅道bug安装报错

    [root@lnmp src]# grep "session.save" /etc/php.ini ; http://php.net/session.save-handler se ...

  9. wp8 入门到精通 抓包

    抓包工具Fiddler的使用 Fiddler是一款免费且功能强大的数据包抓取软件.它通过代理的方式获取程序http通讯的数据.我们可以利用它来检测网页和服务器的交互情况.下面,我们以http://bl ...

  10. hdu 4640(状压dp)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4640 思路:f[i][j]表示一个人状态i下走到j的最小花费,dp[i][j]表示i个人在状态j下的最 ...