3. lamp平台构建
主机名改变是因为我中间换了虚拟机,不影响使用,至始至终都在一台机子上完成。
环境说明:
系统平台 | IP | 需要安装的服务 |
---|---|---|
redhat8 | 192.168.140.142 | httpd-2.4 mysql-5.7 php php-mysql |
lamp平台软件安装次序:
httpd --> mysql --> php
注意:php要求httpd使用prefork MPM
3.1 安装httpd
//YUM源配置成阿里源
[root@duanruhui ~]# ls /etc/yum.repos.d/
CentOS-Base.repo epel.repo epel-testing.repo
epel-modular.repo epel-testing-modular.repo redhat.repo
//安装开发工具包
[root@duanruhui ~]# yum groups install 'Development Tools'
//创建apache服务的用户和组
[root@duanruhui ~]# useradd -r -M -s /sbin/nologin apache
//安装依赖包
[root@localhost ~]# yum -y install openssl-devel pcre-devel expat-devel libtool gcc gcc-c++ make
//下载和安装apr以及apr-util
[root@duanruhui ~]# ls
apr-1.7.0.tar.gz
apr-util-1.6.1.tar.gz
httpd-2.4.53.tar.gz
[root@duanruhui ~]# tar xf apr-1.7.0.tar.gz
[root@duanruhui ~]# cd apr-1.7.0
[root@duanruhui apr-1.7.0]# vi configure
cfgfile="${ofile}T"
trap "$RM \"$cfgfile\"; exit 1" 1 2 15
# $RM "$cfgfile" //将此行加上注释,或者删除此行
[root@duanruhui apr-1.7.0]# ./configure --prefix=/usr/local/apr
[root@duanruhui apr-1.7.0]# make -j 4 && make install
[root@duanruhui ~]# tar -xf apr-util-1.6.1.tar.gz
[root@duanruhui ~]# cd apr-util-1.6.1
[root@duanruhui apr-util-1.6.1]# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
[root@localhost apr-util-1.6.1]# make -j 4 && make install
//编译安装httpd
[root@duanruhui ~]# tar xf httpd-2.4.53.tar.gz
[root@duanruhui ~]# cd httpd-2.4.53
[root@duanruhui httpd-2.4.53]#
[root@duanruhui httpd-2.4.53]# ./configure --prefix=/usr/local/apache \
--enable-so \
--enable-ssl \
--enable-cgi \
--enable-rewrite \
--with-zlib \
--with-pcre \
--with-apr=/usr/local/apr \
--with-apr-util=/usr/local/apr-util/ \
--enable-modules=most \
--enable-mpms-shared=all \
--with-mpm=prefork
make -j 4 && make install
//安装后配置
[root@duanruhui ~]# echo 'export PATH=/usr/local/apache/bin:$PATH' > /etc/profile.d/httpd.sh
[root@duanruhui ~]# source /etc/profile.d/httpd.sh
[root@duanruhui ~]# which httpd
/usr/local/apache/bin/httpd
//设置头文件
[root@duanruhui ~]# ln -s /usr/local/apache/include/ /usr/include/httpd
//设置帮助文档
[root@duanruhui ~]# vi /etc/man_db.conf
...
#
MANDATORY_MANPATH /usr/man
MANDATORY_MANPATH /usr/share/man
MANDATORY_MANPATH /usr/local/share/man
MANDATORY_MANPATH /usr/local/apache/man
#---------------------------------------------------------
...
//设置开机自启
[root@duanruhui ~]# cd /usr/lib/systemd/system
[root@duanruhui system]# cp sshd.service httpd.service
[root@duanruhui system]# vi httpd.service
[Unit]
Description=httpd server daemon
After=network.target sshd-keygen.target
[Service]
Type=forking
ExecStart=/usr/local/apache/bin/apachectl start
ExecStop=/usr/local/apache/bin/apachectl stop
ExecReload=/bin/kill -HUP $MAINPID
[Install]
WantedBy=multi-user.target
[root@duanruhui system]# systemctl daemon-reload
[root@duanruhui system]# cd
[root@duanruhui ~]# systemctl enable --now httpd
//关闭防火墙
[root@duanruhui ~]# systemctl disable --now firewalld
Removed /etc/systemd/system/multi-user.t