centos7.2 源码编译安装php7.2.4 apache2.4.37 https证书安装
一、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证书安装的更多相关文章
- CentOS7.6源码编译安装PHP 7.3.8
安装步骤 PHP官网下载链接:https://www.php.net/downloads.php 1. 使用wget命令下载源码安装包 wget https://www.php.net/distrib ...
- Centos7.X 源码编译安装subversion svn1.8.x
说明:SVN(subversion)的运行方式有两种:一种是基于Apache的http.https网页访问形式:还有一种是基于svnserve的独立服务器模式.SVN的数据存储方式也有两种:一种是在B ...
- CentOS7.5源码编译安装mysql5.7.29
#查看系统版本 [root@ctos3 ~]# cat /etc/redhat-release CentOS Linux release (Core) #下载源码包,需要注意的是mysql5.7 编译 ...
- Centos7下源码编译安装python3.6
测试环境: 操作步骤: 1. 下载Python源码包(python3.6.0) 官网下载地址:https://www.python.org/downloads/ 搜狐下载地址:http://mirro ...
- Centos7.2源码编译安装LA(N)MP
LAMP环境中php是作为apache的模块安装的,所以安装顺序是php放在apache的后面安装,这样便于安装php时可以在apache的模块目录生成对应的php模块. apache版本:2.4.3 ...
- centos7下源码编译方式安装httpd
前言 Apache至少需要apr.apr-util.pcre组件的支持. APR(Apache portable Run-time libraries,Apache可移植运行库)的目的如其名称一样,主 ...
- Centos7.5 源码编译安装PHP
安装依赖 yum -y install epel-release yum -y install gcc gcc-c++ make pcre pcre-devel zlib zlib-devel op ...
- Centos7下源码编译安装与配置redis5.0
1.下载redis5.0源码包 wget http://download.redis.io/releases/redis-5.0.5.tar.gz 2.检查是否安装过之前的历史版本 rpm -qa|g ...
- Centos7源码编译安装PHP7.2(生产环境)
安装PHP依赖包,否则在编译的过程中可能会出现各种报错 # Centos 安装epel-release源并将系统包更新到最新版本 $ yum install epel-release-y $ yum ...
随机推荐
- zabbix加入TCP连接数及状态的监控
一 监控原理: [root@ nginx]# /bin/netstat -an|awk '/^tcp/{++S[$NF]}END{for(a in S) print a,S[a]}' TIME_WAI ...
- 深入理解磁盘文件系统之inode
一.inode是什么? 理解inode,要从文件储存说起. 文件储存在硬盘上,硬盘的最小存储单位叫做"扇区"(Sector).每个扇区储存512字节(相当于0.5KB). 操作系统 ...
- 绕过D盾的一句话
一个很简单的一个技巧,作个笔记,可以绕过D盾检测. 新建test1.php <?php eval($_POST[g]); ?> 新建test2.php <?php $a=" ...
- MongoDB 备份恢复
备份: mongodump --host -u admin -p -o /tmp/alldb/ // 备份所有的库 mongodump --host -u admin -p -d mydb -o /t ...
- 关于Android不能启动的问题
关于Android不能启动的问题 untracked pid exited[日期:2013-03-26] 来源:Linux社区 作者:Linux [字体:大 中 小] 1.ok6410nandf ...
- 团购已满,O2O只是个笑话吗?
团购的用户习惯经过多年的“发酵”以后,大多数用户的团购习惯已经养成,同样一张电影票团购和直接现场购买的差价在一倍以上,当然O2O领域的其他情况也差不多,面对明显的“优惠”,用户当然乐意使用团购服务. ...
- React Native(三)——推送jpush-react-native
瞬间,有种满血复活的赶脚…… 原因呢,就是熟悉了rn项目的套路:当老大问道,“推送功能看了还是没看呢?”的时候,虽然一直没有调试通,但还是不怯场的回答,“看了,按照网上说的也配了,但是还是用不了,不知 ...
- 《Mysql 入门很简单》(读后感②)
接上篇~ 1.UNIX时间戳函数: UNIX_TIMESTAMP()函数以UNIX时间戳的形式返回当前时间: UNIX_TIMESTAMP(d)函数将时间d以UNIX时间戳的形式返回: FROM_UN ...
- [iOS] 在 ios10 中使用 imessage
本文转载至 http://www.tuicool.com/articles/zIFvQn7 原文 http://www.bourbonz.cn/在ios10中使用imessage/ 主题 iOS ...
- 【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 ...