centos7.5环境下编译安装php7.0.30并安装redis和mongo扩展
- .安装php7..30的脚本
- # vim install_php.sh
- #!/bin/bash
- # 安装基本依赖
- yum install -y gcc gcc-c++ htop telnet iotop iptraf iftop make logrotate xinetd ntsysv sysstat perl autoconf libjpeg libjpeg-devel libpng libpng-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel e2fsprogs e2fsprogs-devel krb5-devel libidn libidn-devel libxml2 libxml2-devel libxslt-devel libevent-devel libtool libtool-ltdl bison ntpdate patch vim wget openssh-clients bind-utils
- yum -y install libicu-devel libpng12 libpng12-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel mysql pcre-devel libxslt-devel curl-devel
- ## zlib
- echo "*******************install zlib start*******************"
- cd /usr/local/src && wget http://www.zlib.net/zlib-1.2.11.tar.gz
- tar -xvzf zlib-1.2..tar.gz
- cd zlib-1.2.
- ./configure --prefix=/usr/local/zlib
- make && make install
- ls -l /usr/local/zlib
- echo "*******************install zlib end*******************"
- ## openssl
- echo "*******************install openssl start*******************"
- cd /usr/local/src && wget https://www.openssl.org/source/openssl-1.1.0e.tar.gz --no-check-certificate
- tar -xzf openssl-1.1.0e.tar.gz
- cd openssl-1.1.0e/
- ./config --prefix=/usr/local/openssl
- ./config -t
- make && make install
- ls /usr/local/bin/openssl -l
- echo "*******************install openssl end*******************"
- ## freetype
- echo "*******************install freetype start*******************"
- cd /usr/local/src && wget https://download.savannah.gnu.org/releases/freetype/freetype-2.4.0.tar.gz --no-check-certificate
- tar -zxvf freetype-2.4..tar.gz
- cd freetype-2.4./
- ./configure --prefix=/usr/local/freetype
- make && make install
- echo "*******************install freetype end*******************"
- ## PHP安装
- echo "*******************install php-7.0.30 start*******************"
- cd /usr/local/src && wget http://cn2.php.net/distributions/php-7.0.30.tar.gz
- tar -zxvf php-7.0..tar.gz
- cd php-7.0.
- ./configure \
- --prefix=/usr/local/php7.0.30 \
- --mandir=/usr/local/php7.0.30/share/man \
- --infodir=/usr/local/php7.0.30/share/info \
- --enable-fpm \
- --enable-mbstring \
- --enable-zib \
- --enable-bcmath \
- --enable-opcache \
- --enable-pcnt \
- --enable-soa \
- --enable-calenda \
- --enable-exif \
- --enable-ftp \
- --enable-intl \
- --with-curl \
- --with-gd \
- --with-jpeg-dir=/usr/local/zlib \
- --with-png-dir=/usr/local/zlib \
- --with-mysql \
- --with-pdo_mysql \
- --with-mcrypt \
- --with-freetype-dir=/usr/local/freetype \
- --with-zlib=/usr/local/zlib \
- --with-openssl
- make && make install
- if [ $? != ];then
- exit
- fi
- ln -s /usr/local/php7.0.30 /usr/local/php
- cp /usr/local/src/php-7.0./php.ini-development /usr/local/php7.0.30/lib/php.ini
- cp /usr/local/php7.0.30/etc/php-fpm.conf.default /usr/local/php7.0.30/etc/php-fpm.conf
- cp /usr/local/php7.0.30/etc/php-fpm.d/www.conf.default /usr/local/php7.0.30/etc/php-fpm.d/www.conf
- echo "*******************install php-7.0.30 end*******************"
- ## Mongo扩展
- echo "*******************install Mongo扩展 start*******************"
- cd /usr/local/src && wget http://pecl.php.net/get/mongodb-1.5.2.tgz
- tar -zxvf mongodb-1.5..tgz
- cd mongodb-1.5./
- /usr/local/php7.0.30/bin/phpize
- ./configure --with-php-config=/usr/local/php7.0.30/bin/php-config
- make && make install
- ls /usr/local/php7.0.30/lib/php/extensions/no-debug-non-zts-/
- echo "*******************install Mongo扩展 end*******************"
- ## Redis扩展
- echo "*******************install Redis扩展 start*******************"
- cd /usr/local/src && wget http://pecl.php.net/get/redis-4.0.2.tgz
- tar -zxvf redis-4.0..tgz
- cd redis-4.0./
- /usr/local/php7.0.30/bin/phpize
- ./configure --with-php-config=/usr/local/php7.0.30/bin/php-config
- make && make install
- ls /usr/local/php7.0.30/lib/php/extensions/no-debug-non-zts-/
- echo "*******************install Redis扩展 end*******************"
- ## tideways扩展
- echo "*******************install tideways扩展 start*******************"
- cd /usr/local/src && wget https://s3-eu-west-1.amazonaws.com/tideways/extension/5.0.18/tideways-php-5.0.18-x86_64.tar.gz --no-check-certificate
- tar -zxf tideways-php-5.0.-x86_64.tar.gz
- cd tideways-5.0.
- /usr/local/php7.0.30/bin/phpize
- cp tideways-php-7.0.so /usr/local/php7.0.30/lib/php/extensions/no-debug-non-zts-/
- cd /usr/local/php7.0.30/lib/php/extensions/no-debug-non-zts-/
- mv tideways-php-7.0.so tideways.so
- echo "*******************install tideways扩展 end*******************"
- ## ioncube_loaders 扩展
- echo "*******************install ioncube_loaders start*******************"
- cd /usr/local/src && wget https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz --no-check-certificate
- tar -zxvf ioncube_loaders_lin_x86-.tar.gz
- cd ioncube/
- ls
- cp ioncube_loader_lin_7..so /usr/local/php7.0.30/lib/php/extensions/no-debug-non-zts-/
- echo "*******************install ioncube_loaders end*******************"
- .修改配置文件
- # php.ini配置文件
- # vim /usr/local/php7.0.30/lib/php.ini
- [dba]
- extension_dir=/usr/local/php/lib/php/extensions/no-debug-non-zts-/
- extension=redis.so
- extension=mongodb.so
- [tideways]
- extension=tideways.so
- ;不需要自动加载,在程序中控制就行
- tideways.auto_prepend_library=
- ;频率设置为100,在程序调用时能改
- tideways.sample_rate=
- [ionCube Loader]
- zend_extension=ioncube_loader_lin_7..so
- # php-fpm.conf文件
- [root@eus_filmora_file01:/usr/local/php]# egrep -v '^$|^;' /usr/local/php/etc/php-fpm.conf
- [global]
- process.max =
- rlimit_files =
- events.mechanism = epoll
- include=/usr/local/php7.0.30/etc/php-fpm.d/*.conf
- sed -i 's#user = nobody#user = apache#g' /usr/local/php7.0.30/etc/php-fpm.d/www.conf
- sed -i 's#group = nobody#group = users#g' /usr/local/php7.0.30/etc/php-fpm.d/www.conf
- # www.conf文件
- [root@eus_filmora_file01:/usr/local/php]# egrep -v '^$|^;' /usr/local/php/etc/php-fpm.d/www.conf
- [www]
- user = apache
- group = users
- listen = 127.0.0.1:9000
- pm = dynamic
- pm.max_children = 500
- pm.start_servers = 32
- pm.min_spare_servers = 16
- pm.max_spare_servers = 64
- pm.process_idle_timeout = 10s;
- pm.max_requests = 10240
- request_terminate_timeout = 100
- rlimit_core = 8
- ##################启动脚本
- # 生成软连接
- [root@eus_filmora_file02:/usr/local/src]# rm -f /usr/local/php
- [root@eus_filmora_file02:/usr/local/src]# ln -s /usr/local/php7.0.30/ /usr/local/php
- [root@eus_filmora_file01:/usr/local/src/tideways-5.0.18]# vim /etc/init.d/php-fpm
- #! /bin/sh
- ### BEGIN INIT INFO
- # Provides: php-fpm
- # Required-Start: $remote_fs $network
- # Required-Stop: $remote_fs $network
- # Default-Start: 2 3 4 5
- # Default-Stop: 0 1 6
- # Short-Description: starts php-fpm
- # Description: starts the PHP FastCGI Process Manager daemon
- ### END INIT INFO
- prefix=/usr/local/php
- exec_prefix=${prefix}
- php_fpm_BIN=${exec_prefix}/sbin/php-fpm
- php_fpm_CONF=${prefix}/etc/php-fpm.conf
- php_fpm_PID=${prefix}/var/run/php-fpm.pid
- php_opts="--fpm-config $php_fpm_CONF --pid $php_fpm_PID"
- wait_for_pid () {
- try=0
- while test $try -lt 35 ; do
- case "$1" in
- 'created')
- if [ -f "$2" ] ; then
- try=''
- break
- fi
- ;;
- 'removed')
- if [ ! -f "$2" ] ; then
- try=''
- break
- fi
- ;;
- esac
- echo -n .
- try=`expr $try + 1`
- sleep 1
- done
- }
- case "$1" in
- start)
- echo -n "Starting php-fpm "
- $php_fpm_BIN --daemonize $php_opts
- if [ "$?" != 0 ] ; then
- echo " failed"
- exit 1
- fi
- wait_for_pid created $php_fpm_PID
- if [ -n "$try" ] ; then
- echo " failed"
- exit 1
- else
- echo " done"
- fi
- ;;
- stop)
- echo -n "Gracefully shutting down php-fpm "
- if [ ! -r $php_fpm_PID ] ; then
- echo "warning, no pid file found - php-fpm is not running ?"
- exit 1
- fi
- kill -QUIT `cat $php_fpm_PID`
- wait_for_pid removed $php_fpm_PID
- if [ -n "$try" ] ; then
- echo " failed. Use force-quit"
- exit 1
- else
- echo " done"
- fi
- ;;
- force-quit)
- echo -n "Terminating php-fpm "
- if [ ! -r $php_fpm_PID ] ; then
- echo "warning, no pid file found - php-fpm is not running ?"
- exit 1
- fi
- kill -TERM `cat $php_fpm_PID`
- wait_for_pid removed $php_fpm_PID
- if [ -n "$try" ] ; then
- echo " failed"
- exit 1
- else
- echo " done"
- fi
- ;;
- restart)
- $0 stop
- $0 start
- ;;
- reload)
- echo -n "Reload service php-fpm "
- if [ ! -r $php_fpm_PID ] ; then
- echo "warning, no pid file found - php-fpm is not running ?"
- exit 1
- fi
- kill -USR2 `cat $php_fpm_PID`
- echo " done"
- ;;
- *)
- echo "Usage: $0 {start|stop|force-quit|restart|reload}"
- exit 1
- ;;
- esac
- #######################
- 测试的域名
- # vim /usr/local/nginx/conf/vhost.d/film.chinasoft.com.conf
- server {
- listen 80;
- server_name film.chinasoft.com;
- proxy_connect_timeout 1800s;
- proxy_read_timeout 1800s;
- proxy_send_timeout 1800s;
- access_log /data/www/logs/nginx_log/access/film.chinasoft.com_access.log main ;
- access_log on;
- error_log /data/www/logs/nginx_log/error/film.chinasoft.com_error.log ;
- root /data/www/vhosts/film.chinasoft.com/httpdocs/api/public ;
- index index.html index.shtml index.php ;
- error_page 404 403 /404.html;
- location / {
- index index.php index.html index.htm;
- try_files $uri $uri/ /index.php?$query_string;
- }
- location ~ \.php$ {
- #fastcgi_pass unix:/tmp/php-cgi.sock;
- fastcgi_pass 127.0.0.1:9000;
- fastcgi_index index.php;
- fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
- include fastcgi_params;
- }
- location ^~ /logs/
- {
- deny all;
- }
- }
- server {
- listen 443;
- ssl on;
- ssl_certificate cert2016/chinasoft_com.crt;
- ssl_certificate_key cert2016/chinasoft_com.key;
- ssl_dhparam cert2016/dh_2048.pem;
- ssl_session_timeout 5m;
- ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
- ssl_ciphers "ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:!AES128-GCM-SHA256:!AES256-GCM-SHA384:!AES128-SHA256:!AES256-SHA256:!AES128-SHA:!AES256-SHA:AES:!CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA";
- ssl_prefer_server_ciphers on;
- server_name film.chinasoft.com;
- access_log /data/www/logs/nginx_log/access/film.chinasoft.com_access.log main ;
- error_log /data/www/logs/nginx_log/error/film.chinasoft.com_error.log ;
- root /data/www/vhosts/film.chinasoft.com/httpdocs/api/public ;
- index index.html index.shtml index.php ;
- error_page 404 403 /404.html;
- location / {
- index index.php index.html index.htm;
- try_files $uri $uri/ /index.php?$query_string;
- }
- location ~ \.php$ {
- fastcgi_pass 127.0.0.1:9000;
- fastcgi_index index.php;
- fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
- include fastcgi_params;
- }
- }
- # 创建测试页面
- [root@eus_filmora_file01:/usr/local/php]# mkdir -p /data/www/vhosts/film.chinasoft.com/httpdocs/api/public
- [root@eus_filmora_file01:/usr/local/php]# echo "<?php echo phpinfo(); ?>"> /data/www/vhosts/film.chinasoft.com/httpdocs/api/public/index.php
# php7.0.30安装mysqli扩展
# 获取源码
# wget https://www.php.net/distributions/php-7.0.30.tar.gz
tar xf php-7.0.30.tar.gz
cd php-7.0.30/ext/mysqli
/usr/local/php7.0.30/bin/phpize
# 编译扩展
./configure --prefix=/usr/local/mysqli --with-php-config=/usr/local/php7.0.30/bin/php-config --with-mysqli=/usr/local/mysql-5.7.23-el7-x86_64/bin/mysql_config
make && make install
Installing shared extensions: /usr/local/php7.0.30/lib/php/extensions/no-debug-non-zts-20151012/
Installing header files: /usr/local/php7.0.30/include/php/
# ll /usr/local/php7.0.30/lib/php/extensions/no-debug-non-zts-20151012/
total 5304
-rwxr-xr-x 1 root root 729240 Dec 13 00:33 mysqli.so
-rwxr-xr-x 1 root root 1993656 Nov 20 2018 opcache.a
-rwxr-xr-x 1 root root 928360 Nov 20 2018 opcache.so
-rwxr-xr-x 1 root root 1771528 Nov 20 2018 redis.so
# 添加mysqli扩展
# vim /usr/local/php7.0.30/etc/php.ini
[dba]
extension_dir=/usr/local/php7.0.30/lib/php/extensions/no-debug-non-zts-20151012/
extension=mysqli.so
# php -m
[PHP Modules]
bcmath
calendar
Core
ctype
curl
date
dom
exif
fileinfo
filter
ftp
gd
hash
iconv
intl
json
libxml
mbstring
mcrypt
mysqli
- [opcache]
- zend_extension=/usr/local/php7.0.30/lib/php/extensions/no-debug-non-zts-/opcache.so
- opcache.memory_consumption=
- opcache.interned_strings_buffer=
- opcache.max_accelerated_files=
- opcache.revalidate_freq=
- opcache.fast_shutdown=
- opcache.enable_cli=
- opcache.enable=
- opcache.force_restart_timeout=
- opcache.optimization_level=
centos7.5环境下编译安装php7.0.30并安装redis和mongo扩展的更多相关文章
- centos7.6环境下编译安装tengine-2.2.2的编译安装
centos7.6环境下编译安装tengine-2.2.2的编译安装 .获取tengine2..2的源码包 http://tengine.taobao.org/download/tengine-2.2 ...
- centos7下编译安装php-7.0.15(PHP-FPM)
centos7下编译安装php-7.0.15(PHP-FPM) 一.下载php7源码包 http://php.net/downloads.php 如:php-7.0.15.tar.gz 二.安装所需依 ...
- Linux Centos7.2 编译安装PHP7.0.2
操作环境: 1.系统:Centos7.2 2.服务:Nginx 1.下载PHP7.0.2的安装包解压,编译,安装: $ cd /usr/src/ $ wget http://cn2.php.net/d ...
- CentOS7.3环境下源码安装httpd
CentOS7.3环境下源码安装httpd 本文在CentOS7.3下,源码安装apache服务httpd2.4. 1.下载好源码安装包 [root@localhost ~]#ll total 625 ...
- libCURL开源库在VS2010环境下编译安装,配置详解
libCURL开源库在VS2010环境下编译安装,配置详解 转自:http://my.oschina.net/u/1420791/blog/198247 http://blog.csdn.net/su ...
- centos7.2环境下安装smokeping对网络状态进行监控
centos7.2环境下安装smokeping对网络状态进行监控 安装smokeping建议用centos7,用centos6.5一直卡在smokeping那里,下载不了perl的扩展插件,可能是因为 ...
- linux下编译qt5.6.0静态库(使用./configure --help来看看都有哪些参数。超详细,有每一个模块的说明。如果改变了安装的目录,需要到安装目录下的bin目录下创建文件qt.conf)(乌合之众)good
linux下编译qt5.6.0静态库 linux下编译qt5.6.0静态库 configure生成makefile 安装选项 Configure选项 第三方库: 附加选项: QNX/Blackberr ...
- Centos7.4环境下搭建Python开发环境(虚拟机安装+python安装+pycharm安装)
目录 一.安装 Centos7.4虚拟机 二.安装 python3.6.7 三.安装 pycharm 一般情况下,大家都是在 Windows平台下进行 Python开发,软件安装和环境搭建都非常&qu ...
- Redhat环境下编译安装Google Bazel
Redhat环境下编译安装bazel 作者:Jack47 目前Google Bazel没有提供各个操作系统下的二进制安装包,只提供源代码,需要我们自己编译安装,详情可以见我翻译的中文版Google B ...
随机推荐
- 炸弹人游戏开发系列(7):加入敌人,使用A*算法寻路
前言 上文中我们实现了炸弹人与墙的碰撞检测,以及设置移动步长来解决发现的问题.本文会加入1个AI敌人,敌人使用A*算法追踪炸弹人. 本文目的 加入敌人,追踪炸弹人 本文主要内容 开发策略 加入敌人 实 ...
- Winform 最小化双击显示,最小化右键退出。退出
WinForm 之 窗口最小化到托盘及右键图标显示菜单 Form最小化是指整个Form都缩小到任务栏上,但是窗体以Form的标题栏形式显示在任务栏上, 若是想让Form以Icon的形式显示在任务栏右下 ...
- 使用ffmpeg视频切片并加密
想达到的目的:将一个mp4视频文件切割为多个ts片段,并在切割过程中对每一个片段使用 AES-128 加密,最后生成一个m3u8的视频索引文件: 电脑环境 Fedora,已经安装了最新的ffmpeg: ...
- Bugku 分析 中国菜刀
解压之后得到了一个流量包,只有不到10KB,美滋滋 先抓重点,过滤出http,只有6条数据记录,3条post,3条response,3条post都是一样的 随便打开一条pos 是一个assert断言, ...
- vue中@contextmenu在pc和mac中的区别
项目中有用到右键菜单,故用了@contextmenu,由于本人是用的PC电脑,所以一切正常, 但是有同事用mac测试了一下,问题随之而来,MAC上右键按下就触发了, PC上面是鼠标抬起才会触发,所以这 ...
- error:Microsoft Visual C++ 14.0 is required.
1,下载14.0安装包,解压,再次执行pip install XX命令 2,安装包已经在下载文件中 3,最不行找这个网站 https://www.microsoft.com/zh-cn/downloa ...
- 解决Docker安装MySQL不区分大小写问题
Docker安装MySQL忽略大小写问题的问题连接MySQL: 查看当前mysql的大小写敏感配置 show global variables like '%lower_case%'; +------ ...
- 【XSY2843】「地底蔷薇」 NTT什么的 扩展拉格朗日反演
题目大意 给定集合\(S\),请你求出\(n\)个点的"所有极大点双连通分量的大小都在\(S\)内"的不同简单无向连通图的个数对\(998244353\)取模的结果. \(n\le ...
- Angular6封装http请求
最近抽空学习了一下Angular6,之前主要使用的是vue,所以免不了的也想对Angular6提供的工具进行一些封装,今天主要就跟大家讲一下这个http模块. 之前使用的ajax库是axios,可以设 ...
- AHOI2019N省联考凉凉记
博主并未时空穿越,本文没有对选手造成恐慌 DAY0 这已经是我第四次省选了,时间真快啊,怀念三年前毫无压力的省选,考完以后如果有时间并且没退役的话可能会陆续搬以前写在别处的游记(主要是2018年的游记 ...