centos7编译安装httpd
一,由于centos7的apr版本无法支持最新的httpd所以编译httpd之前得先编译apr这里进行一次性编译
1.1下载软件包
[root@explore ~]# wget https://apache.mirrors.tworzy.net//apr/apr-util-1.6.1.tar.gz
[root@explore ~]# wget https://apache.mirrors.tworzy.net//apr/apr-1.7.0.tar.gz
[root@explore ~]# wget https://ftp.man.poznan.pl/apache//httpd/httpd-2.4.46.tar.gz
1.2解压
[root@explore data]# tar xf apr-1.7.0.tar.gz
[root@explore data]# tar xf apr-util-1.6.1.tar.gz
[root@explore data]# tar xf httpd-2.4.46.tar.gz
1.2移动apr到http目录下
[root@explore data]# mv apr-1.7.0 httpd-2.4.46/srclib/apr
[root@explore data]# mv apr-util-1.6.1 httpd-2.4.46/srclib/apr-util
[root@explore data]# ll httpd-2.4.46/srclib/
total 12
drwxr-xr-x 27 li li 4096 Apr 2 2019 apr
drwxr-xr-x 20 li li 4096 Oct 18 2017 apr-util
-rw-r--r-- 1 root 40 121 Feb 11 2005 Makefile.in
1.3编译
[root@explore ]# mkdir /app/httpd24
[root@explore ]# cd httpd-2.4.46/
./configure \
--prefix=/app/httpd24 \
--enable-so \
--enable-ssl \
--enable-cgi \
--enable-rewrite \
--with-zlib \
--with-pcre \
--with-included-apr \
--enable-modules=most \
--enable-mpms-shared=all \
--with-mpm=prefork
[root@explore ]# make -j 4 && make install
1.4 启动用户更换为apache
[root@explore ~]# sed -Ei.bak 's@daemon@apache@' /app/httpd24/conf/httpd.conf
[root@explore ~]# echo "PATH=/app/httpd24/bin:$PATH" > /etc/profile.d/httpd24.sh #可不必做
[root@explore ~]# . /etc/profile.d/httpd24.sh #使用systemctl 管理 也可以cp yum安装点service文件修改路径即可
cat > /usr/lib/systemd/system/httpd24.service <<-EOF
[Unit]
Description=The Apache HTTP Server
After=network.target remote-fs.target nss-lookup.target
Documentation=man:httpd(8)
Documentation=man:apachectl(8)
[Service]
Type=forking
#EnvironmentFile=/etc/sysconfig/httpd
ExecStart=/app/httpd24/bin/apachectl start
#ExecStart=/app/httpd24/bin/httpd $OPTIONS -k start
ExecReload=/app/httpd24/bin/apachectl graceful
#ExecReload=/app/httpd24/bin/httpd $OPTIONS -k graceful
ExecStop=/app/httpd24/bin/apachectl stop
KillSignal=SIGCONT
PrivateTmp=true
[Install]
WantedBy=multi-user.target
EOF

浙公网安备 33010602011771号