本文是经过工作上自己整理的生产文档改编来的,生产文档也是我自己整理并且多次测试后形成的,改动的地方只是一些敏感的文件、目录等的命名,所以只要照着做,改成自己需要的命名规则就可以了,基本没有什么太大问题,有问题的话可以留言我们共同探讨!
1、Apache用户及组的建立
[root]# groupadd -g 401 apachegrp
[root]# useradd -m -g apachegrp -d /home/apache -s /bin/bash -u 602 apache
[root]# passwd apache
[root]# su - apache
如果新装linux提示apache用户已存在,可以先使用以下命令删除自带apache用户及其所有文件重新手动创建,如果不能确认已存在的apache用户是否有人在用,推荐大家换个用户名
[root]# userdel -r apache
2、上传以下安装包至用户目录(/home/apache)
openssl-1.0.2g.tar.gz
httpd-2.4.29.tar.gz
apr-1.5.2.tar.gz
apr-util-1.5.4.tar.gz
pcre-8.40.tar.gz
3、安装(前面括号里我只写了用户,命令中的路径基本都已经写成绝对路径了,各位也来帮我挑挑错误)
[root]# yum install gcc*
[apache]$ tar -zxvf openssl-1.0.2g.tar.gz
[apache]$ cd openssl-1.0.2g
[root]# mkdir /opt/openssl
[root]# chown apache:apachegrp /opt/openssl
[apache]$ cd openssl-1.0.2g
[apache]$ ./config --prefix=/opt/openssl
[apache]$ make && make install
如图:
4、安装apr
[apache]$ tar -zxvf apr-1.5.2.tar.gz
[apache]$ cd apr-1.5.2
[root]# mkdir /opt/apr
[root]# chown apache:apachegrp /opt/apr
[apache]$ ./configure --prefix=/opt/apr
[apache]$ make && make install
5、安装apr-util
[apache]$ tar -zxvf apr-util-1.5.4.tar.gz
[apache]$ cd apr-util-1.5.4
[root]# mkdir /opt/apr-util
[root]# chown apache:apachegrp /opt/apr-util
[apache]$ ./configure --prefix=/opt/apr-util --with-apr=/opt/apr
[apache]$ make && make install
6、安装pcre
[apache]$ tar -zxvf pcre-8.40.tar.gz
[apache]$ cd pcre-8.40
[root]# mkdir /opt/pcre
[root]# chown apache:apachegrp /opt/pcre
[apache]$ ./configure --prefix=/opt/pcre
[apache]$ make && make install
7、安装httpd
[apache]$ tar -zxvf httpd-2.4.29.tar.gz
[apache]$ cd httpd-2.4.29
[root]# mkdir /opt/httpd
[root]# chown apache:apachegrp /opt/httpd
[apache]$ export LDFLAGS=-ldl //执行下面命令前最好加上这句话,否则可能报错:configure: error: ... Error, SSL/TLS libraries were missing or unusable
[apache]$ ./configure --prefix=/opt/httpd --enable-so--enable-info--enable-headers --enable-mods-shared=all --enable-ssl=static --with-ssl=/opt/openssl --with-apr=/opt/apr --with-apr-util=/opt/apr-util --with-pcre=/opt/pcre
[apache]$ make && make install
8、【root】启动apache(默认启动80端口需要root权限,如果已修改为非80端口,可以用apache用户启动)
[root]# cd /opt/httpd/bin
[root]# ./apachectl start
启动时可能会遇到以下问题:
(1)
解决方法:
vi /opt/httpd/conf/httpd.conf
将
#ServerName www.example.com:80
改为
ServerName localhost:80
再执行 ./apachectl start
(2)
启动Httpd失败,报
(13)Permission denied: make_sock: could not bind to address [::]:80
原因:权限不足,80端口需要由root启动,所以需要用root用户执行 ./apachectl start 启动apache