一、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. 【Android】java.lang.RuntimeException: java.lang.Throwable: A WebView method was called on thread 'JavaBridge'.

    一.问题 Java调用JS事件出现 java.lang.RuntimeException: java.lang.Throwable: A WebView method was called on th ...

  2. jumpserver安装及使用教程

    我自己是jumpserver的新手,以下两个链接是比较好的教程: 安装教程:http://blog.csdn.net/wanglei_storage/article/details/51001810 ...

  3. windows本地hash值获取和破解详解

    powershell版的procdump https://www.t00ls.net/articles-48428.html procdump procdump是微软官方提供的一个小工具, 微软官方下 ...

  4. Memcache未授权访问漏洞

    Memcached 分布式缓存系统,默认的 11211 端口不需要密码即可访问,黑客直接访问即可获取数据库中所有信息,造成严重的信息泄露. 0X00 Memcache安装 1. 下载Mencache的 ...

  5. Java - Calendar类的使用

    今天在写代码时需要用到时间相关的类,一开始,数据库中存的数据类型是timestamp的,所以在Java中就使用了 Timestamp类型,但当调用Timestamp类型的方法时发现,它的很多方法都是d ...

  6. tablayout在中间显示

    <android.support.design.widget.TabLayout android:id="@+id/tabLayout" android:layout_wid ...

  7. Python时间戳与时间字符串互相转换实例代码

    #设a为字符串import timea = "2011-09-28 10:00:00" #中间过程,一般都需要将字符串转化为时间数组time.strptime(a,'%Y-%m-% ...

  8. Java动态代理的实现机制

    一.概述 代理是一种设计模式,其目的是为其他对象提供一个代理以控制对某个对象的访问,代理类负责为委托类预处理消息,过滤消息并转发消息以及进行消息被委托类执行后的后续处理.为了保持行为的一致性,代理类和 ...

  9. 探求C#.Net中ArrayList与Array的区别

     ArrayList与Array的区别概述     ArrayList 是数组的复杂版本.ArrayList 类提供在大多数 Collections 类中提供但不在 Array 类中提供的一些功能.例 ...

  10. HR别掉坑里了,送你最精确的计薪算法!

      月工资的计算方式有多种多样.即便是资深的HR,也会犯常识性的错误,正算反算,哪一个方法更适合,有时还会容易出现数字偏差,回想一下,你们公司的工资是如何计算的? 第一 劳动工资计算标准按几天计算 根 ...