1.源码安装步骤:
- ./configure --prefix=软件安装目录 --with-关联软件名=关联软件所在路径
- make &&make install //编译并安装
- PREFIX/bin/*ctl start //启动服务
注意如果在make时出错需要执行make clean 并最好重新 ./configure
2.安装编译工具
由于是源码安装,所以需要编译工具,这里用到的是gcc和gcc-c++。
[root@nebulalinux src]# yum install gcc gcc-c++
3.安装wget命令
[root@nebulalinux src]# yum install wget
4.下载并安装
由于httpd的安装需要依赖apr、apr-util和pcre,所以这几个都需要安装。文件都下载于/usr/local/src目录下,且都安装于/usr/local目录下。
- 安装apr
[root@nebulalinux src]# wget http://mirror.bit.edu.cn/apache/apr/apr-1.7.0.tar.gz //下载压缩包
[root@nebulalinux src]# tar -xvzf apr-1.7.0.tar.gz //解压
[root@nebulalinux src]# cd apr-1.7.0
[root@nebulalinux apr-1.7.0]# ./configure --prefix=/usr/local/apr //设置安装路径
...
[root@nebulalinux apr-1.7.0]# make && make install //编译并安装
- 安装apr-util
注意在安装apr-util前,需要安装expat库,否则无法安装成功。
[root@nebulalinux src]# yum install expat-devel -y //安装expat库
[root@nebulalinux src]# wget http://mirror.bit.edu.cn/apache/apr/apr-util-1.6.1.tar.gz //下载压缩包
[root@nebulalinux src]# tar -xvzf apr-util-1.6.1.tar.gz //解压
[root@nebulalinux src]# cd apr-util-1.6.1
[root@nebulalinux apr-util-1.6.1]# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr //设置安装路径和依赖关系
...
[root@nebulalinux apr-util-1.6.1]# make && make install //编译并安装
- 安装pcre
[root@nebulalinux src]# wget https://sourceforge.net/projects/pcre/files/pcre/8.42/pcre-8.42.tar.gz //下载压缩包
[root@nebulalinux src]# tar -xvzf pcre-8.42.tar.gz //解压
[root@nebulalinux src]# cd pcre-8.42
[root@nebulalinux pcre-8.42]# ./configure --prefix=/usr/local/pcre -with-apr=/usr/local/apr
--with-apr-util=/usr/local/apr-util //设置安装路径和依赖关系
...
[root@nebulalinux pcre-8.42]# make &&make install //编译并安装
- 安装httpd
[root@nebulalinux src]# wget http://mirror.bit.edu.cn/apache/httpd/httpd-2.4.41.tar.gz //下载压缩包
[root@nebulalinux src]# tar -xvzf htttpd-2-4-41.tar.gz //解压
[root@nebulalinux httpd-2.4.41]# ./configure --prefix=/usr/local/apache --with-apr=/usr/local/apr
--with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre 设置安装路径和依赖关系
...
[root@nebulalinux httpd-2.4.41]# make &&make install //编译并安装
5.启动服务
启动成功后无提示,可再次输入此命令会提示服务已启动
[root@nebulalinux local]# /usr/local/apache/bin/apachectl start //启动httpd服务
[root@nebulalinux local]# /usr/local/apache/bin/apachectl start
httpd (pid 117474) already running
查看端口状态
[root@nebulalinux local]# netstat -tunl | grep 80
tcp6 0 0 :::80 :::* LISTEN
udp 0 0 0.0.0.0:48007 0.0.0.0:*
查看httpd的进程
[root@nebulalinux local]# ps aux | grep httpd
root 115854 0.0 0.2 70768 2180 ? Ss 15:40 0:00 /usr/local/apache/bin/httpd -k start
daemon 115855 0.0 0.2 492888 2696 ? Sl 15:40 0:00 /usr/local/apache/bin/httpd -k start
daemon 115856 0.0 0.2 361816 2184 ? Sl 15:40 0:00 /usr/local/apache/bin/httpd -k start
daemon 115857 0.0 0.2 361816 2184 ? Sl 15:40 0:00 /usr/local/apache/bin/httpd -k start
root 117429 0.0 0.0 112712 960 pts/0 R+ 17:36 0:00 grep --color=auto httpd
可直接curl个人主机IP来确定是否成功
[root@nebulalinux local]# curl 192.168.48.3
<html><body><h1>It works!</h1></body></html>
也可以通过浏览器输入虚拟机IP地址访问来确定是否成功