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 bin1.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 install1.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 install1.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 install2.apache 访问测试 2.1修改配置文件端口号
/usr/local/httpd2451/conf/httpd.conf
[root@localhost bin]# ./apachectl -v Server version: Apache/2.4.51 (Unix) Server built: Oct 27 2021 16:39:483.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 start3.4.httpd用户无法启动apache服务器
因为原来是用root用户启动的,httpd用户没有权限启动。
修改权限,允许使用httpd用户启动
1)切换用户前将Apache停止,否则logs下面会有一个进程文件 httpd.pid。停止后就没有了。
2)修改用户
[root@localhost httpd]# chown -R httpd:httpd /home/httpd/httpd2451
(-R 包括文件夹下所有文件及文件夹)



