资源规划
组件 | bigdata-node1 | bigdata-node2 | bigdata-node3 |
---|---|---|---|
OS | centos7.6 | centos7.6 | centos7.6 |
Apache | httpd、apachectl | N.A | N.A |
安装介质
- httpd-2.4.6.tar.gz:http://archive.apache.org/dist/httpd/httpd-2.4.6.tar.gz
- apr-1.7.0.tar.gz:https://mirrors.bfsu.edu.cn/apache/apr/apr-1.7.0.tar.gz
- apr-util-1.6.1.tar.gz:https://mirrors.bfsu.edu.cn/apache/apr/apr-util-1.6.1.tar.gz
- openssl-1.1.1g.tar.gz:https://www.openssl.org/source/openssl-1.1.1g.tar.gz
- pcre-8.10.zip:https://nchc.dl.sourceforge.net/project/pcre/pcre/8.10/pcre-8.10.zip
expat_2.0.1.orig.tar.gz:https://launchpad.net/ubuntu/+archive/primary/+sourcefiles/expat/2.0.1-7.2ubuntu1.4/expat_2.0.1.orig.tar.gz
安装Apache
解压缩
tar -zxvf /share/httpd-2.4.6.tar.gz -C ~/modules/
安装准备
安装apr
tar -zxvf /share/apr-1.7.0.tar.gz -C ~/modules/httpd-2.4.6/srclib/
cd ~/modules/httpd-2.4.6/srclib
mv apr-1.7.0 apr
安装apr-util
tar -zxvf /share/apr-util-1.6.1.tar.gz -C ~/modules/httpd-2.4.6/srclib/
cd ~/modules/httpd-2.4.6/srclib
mv apr-util-1.6.1 apr-util
安装ssl(可选)
tar -zxvf /share/openssl-1.1.1g.tar.gz -C ~/modules/httpd-2.4.6/srclib/
cd ~/modules/httpd-2.4.6/srclib/openssl-1.1.1g
./config -fPIC --prefix=/home/vagrant/modules/ssl && make && make install
安装pcre
cd ~/modules/httpd-2.4.6/srclib
cp /share/pcre-8.10.zip ./
# sudo yum install -y unzip zip
unzip -o pcre-8.10.zip
cd pcre-8.10
./configure --prefix=/home/vagrant/modules/pcre
make -j8 && make install
安装expat
# 在线安装
#sudo yum install expat-devel
tar -zxvf /share/expat_2.0.1.orig.tar.gz -C ~/modules/httpd-2.4.6/srclib/
cd ~/modules/httpd-2.4.6/srclib/expat-2.0.1
./configure --prefix=/home/vagrant/modules/expat
make -j8 && make install
对于64位操作系统,需要手动的拷贝下动态链接库到“lib64”下:
mkdir /home/vagrant/modules/expat/lib64
cp -a /home/vagrant/modules/expat/lib/* /home/vagrant/modules/expat/lib64/
安装httpd
cd ~/modules/httpd-2.4.6
# expat在线安装
# ./configure --with-included-apr --with-pcre=/home/vagrant/modules/pcre --prefix=/home/vagrant/modules/apache2 --enable-mods-shared=most
# expat离线安装
./configure --with-expat=/home/vagrant/modules/expat --with-included-apr --with-pcre=/home/vagrant/modules/pcre --prefix=/home/vagrant/modules/apache2
# ssl支持
./configure --with-included-apr --with-pcre=/home/vagrant/modules/pcre --with-ssl=/home/vagrant/modules/ssl --prefix=/home/vagrant/modules/apache2 --enable-mods-shared=most
# httpd安装
make -j8 && make install
参数说明:
—prefix:安装目录。
- —with-included-apr:apr & apr-util安装目录,Socket调度。
- —with-pcre:pcre安装目录,用于正则匹配。
- —with-expat:expat安装目录,用于解析XML格式的文件。
- —enable-mods:静态加载模块(
)。most:加载通用模块;all:加载所有模块。 —enable-mods-shared:动态加载模块(LoadModule)。most:加载通用模块;all:加载所有模块。
配置
配置非root用户无法绑定80特权端口,打开${APACHE_HOME}/conf/httpd.conf修改端口并配置其他信息。
vi ~/modules/apache2/conf/httpd.conf
内容如下:
Listen 8083
ServerName bigdata-node1
User vagrant
Group vagrant
配置环境变量:
vi ~/.bashrc
内容如下:
export APACHE_HOME=/home/vagrant/modules/apache2
export PATH=${APACHE_HOME}/bin:$PATH
配置生效:
source ~/.bashrc
启动
特权端口支持
因为普通用户只能用1024以上的端口,1024以内的端口只能由root用户使用。但是为了避免每次启动都通过root用户,可以通过set UID的方式来解决此问题。一次性进行如下操作即可完成。
# 切换到root用户
sudo su
cd /home/vagrant/modules/apache2/bin
chown root httpd
chmod u+s httpd
# 切换到普通用户
su - vagrant
- apachectl启停Apache
说明:-k:表示向父进程发送信号,是源于UNIX的kill命令向运行中的进程发送信号(TERM、HUP、USR1)。apachectl -k start
apachectl -k stop
# 推荐
httpd -k start
httpd -k stop
验证
# 查看服务是否运行
ps -ef | grep httpd
ps aux |grep httpd
# 查看端口
sudo netstat -anpl | grep httpd
# URL访问
curl http://bigdata-node1:8083
curl http://bigdata-node1
参考
博文:Apache离线安装参考
http://www.bubuko.com/infodetail-2572548.html