1.依赖安装
apr、apr-util 包可以解压后放入/home/httpd/httpd-2.4.51/srclib下。然后一块编译。
1.1.安装gcc或gcc-c++
[root@getlnx05 pcre-8.33]# yum list gcc-c++
Loaded plugins: product-id, security, subscription-manager
Updating Red Hat repositories.
Available Packages
gcc-c++.x86_
4.1.2-51.
rhel-debuginfo
[root@getlnx05 pcre-8.33]# yum list gcc
Loaded plugins: product-id, security, subscription-manager
Updating Red Hat repositories.
Installed Packages
gcc.x86_
4.1.2-51.
installed
[root@getlnx05 pcre-8.33]# rpm -q gcc
gcc-4.1.2-51.el5
从上面可见gcc包已经安装,缺少gcc-c++包,那么接下来安装包gcc-c++,如果此处不安装该包,后面安装过程中会报错。(编译C)
[root@getlnx05 pcre-8.33]#yum install gcc-c++
1.2.安装APR和APR-Util
1.2.1安装apr
[root@getlnx05 httpd]# ls apr*
apr-1.7.0.tar.gz apr-util-1.5.2.tar.gz
[root@getlnx05 httpd]#
[root@getlnx05 httpd]# tar -zxvf apr-1.7.0.tar.gz
[root@getlnx05 httpd]# cd apr-1.7.0
[root@getlnx05 apr-1.7.0]# ls
新建目录/usr/local/apr,用作安装目录:
[root@getlnx05 apr-1.7.0]# mkdir /home/httpd/apr
[root@getlnx05 apr-1.7.0]# ./configure --prefix=/home/httpd/apr
[root@getlnx05 apr-1.7.0]# make
[root@getlnx05 apr-1.7.0]# make install
安装完成后,可以验证一下。
[ root@getlnx05 apr]# ls -lrt
total 32
drwxr-xr-x 3 root root 4096 Aug 15 06:57 include
drwxr-xr-x 3 root root 4096 Aug 15 06:57 lib
drwxr-xr-x 2 root root 4096 Aug 15 06:57 build-1
drwxr-xr-x 2 root root 4096 Aug 15 06:57 bin
1.2.2安装apr-util
[root@getlnx05 httpd]# tar -zxvf apr-util-1.5.2.tar.gz
[root@getlnx05 httpd]# cd apr-util-1.5.2
[root@localhost apr-util-1.6.1]# mkdir /home/httpd/apr-util
[root@getlnx05 apr-util-1.6.1]#./configure --prefix=/home/httpd/apr-util --with-apr=/home/httpd/apr/bin/apr-1-config
[root@getlnx05 apr-util-1.5.2]# make
[root@getlnx05 apr-util-1.5.2]# make install
1.3.安装PCRE
[root@getlnx05 httpd]# unzip pcre-8.45.zip
[root@getlnx05 httpd]# cd pcre-8.45
[root@getlnx05 pcre-8.45]# mkdir /home/httpd/pcre
[root@getlnx05 pcre-8.45]# ./configure --prefix=/home/httpd/pcre --with-apr=/home/httpd/apr/bin/apr-1-config
[root@getlnx05 pcre-8.45]# make
[root@getlnx05 pcre-8.45]# make install
1.4.安装Apache
[root@getlnx05 httpd]# tar -zxvf httpd-2.4.51.tar.gz
[root@getlnx05 httpd]# cd httpd-2.4.51
[root@getlnx05 httpd]# mkdir /home/httpd/apache
[root@getlnx05 httpd-2.4.51]# ./configure --prefix=/home/httpd/httpd --with-pcre=/home/httpd/pcre --with-apr=/home/httpd/apr --with-apr-util=/home/httpd/apr-util
[root@getlnx05 httpd-2.4.51]# make
[root@getlnx05 httpd-2.4.51]# make install
2.apache 访问测试
2.1修改配置文件端口号
/usr/local/httpd2451/conf/httpd.conf
2.2查看服务器 ip地址
2.3通过浏览器访问
3.问题:
3.1.查看Apache的版本信息
[root@localhost bin]# ./apachectl -v
Server version: Apache/2.4.51 (Unix)
Server built: Oct 27 2021 16:39:48
3.2.隐藏Apache版本信息(方法1 推荐)
修改配置文件vim /etc/httpd/conf/httpd.conf(生产上的配置文件路径地址可能有所不同),在文本末添加如下两行内容,保存并退出。
ServerTokens Prod
ServerSignature off
重启
3.3.隐藏Apache版本信息(方法2)
将主配置文件httpd.conf以下行注释去掉
/usr/local/apache/conf/httpd.conf
#lnclude conf/extra/httpd-default.conf
修改httpd-default.conf文件(ServerTokens Full #修改为ServerTokens Prod)
/usr/local/apache/conf/extra/httpd-default.conf
ServerTokens Prod
重启httpd服务,进行访问验证
/usr/local/apache/bin
[root@localhost bin]# ./apachectl stop
[root@localhost bin]# ./apachectl start
3.4.httpd用户无法启动apache服务器
因为原来是用root用户启动的,httpd用户没有权限启动。
修改权限,允许使用httpd用户启动
1)切换用户前将Apache停止,否则logs下面会有一个进程文件 httpd.pid。停止后就没有了。
2)修改用户
[root@localhost httpd]# chown -R httpd:httpd /home/httpd/httpd2451
(-R 包括文件夹下所有文件及文件夹)