linux安装apache的纠结过程
本以为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的纠结过程的更多相关文章
- linux安装apache软件的过程
参考官方安装指导:http://httpd.apache.org/docs/2.4/install.html 1.下载依赖包 apr/apr-util/pcre 2.解压依赖包 3.安装apr 进入安 ...
- linux安装apache
我的linux是用阿里云上的,版本是CentOS 6.5 apache依赖于apr.apr-util和pcre,所以需要先安装这三个 apr(包含apr.apr-util和apr-iconv)是apa ...
- linux 安装 apache
1. 系统基本信息 CentOS 6.4 内存2G 硬盘 200G cpu 4核 (cat /proc/cpuinfo |grep 'processor'|wc -l 查看cpu核数 ...
- 【问题记录】 Linux 安装 apache 遇到的一些问题
以下为linux上安装apache时自己遇到的一些问题,记录在这,以后遇到时也会不定时更新... 一.安装Apache提示APR not found的解决办法 解决方法: 1. 网站 http://a ...
- 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 ...
- LInux——安装Apache
在安装Apache的httpd的时候经常会遇到: configure: error: APR not found . Please read the documentation. configure ...
- Linux安装pytorch的具体过程以及其中出现问题的解决办法
1.安装Anaconda 安装步骤参考了官网的说明:https://docs.anaconda.com/anaconda/install/linux.html 具体步骤如下: 首先,在官网下载地址 h ...
- Linux安装apache服务
1.通过yum包下载安装httpd yum -y install httpd*(等待安装) 到下面就安装完毕 2.启动apache服务 service httpd restart 3.现在就可以查看a ...
- linux 安装Apache服务器
这篇文章先别看,,有些地方我不是很明白,写错了一些地方,正在咨询会linux的大神 安装好Apache就可以用Http访问或者下载电脑的文件了 我还是用 连接我的linux电脑 咱把Apache安装到 ...
随机推荐
- node.js模拟qq漂流瓶
(文章是从我的个人主页上粘贴过来的,大家也可以访问我的主页 www.iwangzheng.com) node.js模拟简易漂流瓶,页面有扔瓶子和捡瓶子的功能,一个瓶子只能被捡到一次,阅读完就置状态位, ...
- 【Python】Django支持事务方式
代码: with transaction.atomic(): for i in xrange(int(svc_instance_num)): tmp_fileprotect_svc_instance ...
- HTML控件ID和NAME属性及在CS页面获得.ASPX页面中HTML控件的值
<转载>来自网络 一.ID是在客户端脚本里用!NAME是用于获取提交表单的某表单域信息,在form里面,如果不指定Name的话,就不会发送到服务器端,所以有name属性的控件,必须指定na ...
- location 、history
location.href= location.reload() history.go() 0 1 -1 history.back() history.forward() history.le ...
- placement new讲解
[本文链接] http://www.cnblogs.com/hellogiser/p/placement-new.html [分析] 首先我们区分下几个容易混淆的关键词:new.operator ne ...
- Linux删除乱码文件
2015年2月28日 17:11:54 1. ls -i 列出文件的inode号 ??Φ-ͦ?+?-ˬͩ-????-??.doc 2. find folder -inum -delete -de ...
- 转mysql存储引擎memory,ndb,innodb之选择
1 mysql的innodb和cluster的NDB引擎都支持事务,在有共同的特性外,也有不同之处:以mysql cluster NDB 7.3和MySQL 5.6之InnoDB为例:ndb7.3基于 ...
- 升级Windows10后Apache服务器启动失败的解决方法
升级windows10系统后,微软内置了ASP.NET的web高级服务,默认安装了IIS服务器和MSSQL数据库,因为80端口被占用的原因,导致Apache服务器无法正常启动,但是MySQL服务一切正 ...
- codeforces B. Xenia and Spies 解题报告
题目链接:http://codeforces.com/problemset/problem/342/B 题目意思:有n个spy,编号从1-n,从左到右排列.现在的任务是,spy s要把信息传递到spy ...
- std::map常用方法
map<string, int> Employees; Employees["Mike C."] = 12306; Employees.insert(make_pair ...