• 在 CentOS7最小化 下的编译安装:Nginx 1.5.2 + PHP 5.5.7 + MySQL 5.6.10


    1、安装Nginx:

    安装包目录

    mkdir -p /Data/tgz
    cd /Data/tgz

    安装编译依赖

    yum install wget
    yum install pcre
    yum install openssl*
    yum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers make
    yum -y install gd gd2 gd-devel gd2-devel
    /usr/sbin/groupadd www
    /usr/sbin/useradd -g www www
    ulimit -SHn 65535

    perl语言兼容正则表达式,是一个用C语言编写的正则表达式函数

    wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.32.tar.gz
    tar zxvf pcre-8.32.tar.gz
    cd pcre-8.32
    ./configure --prefix=/Data/apps/pcre
    make && make install
    cd ../
    wget http://nginx.org/download/nginx-1.5.2.tar.gz
    tar zxvf nginx-1.5.2.tar.gz
    cd nginx-1.5.2
    ./configure --user=www --group=www --prefix=/Data/apps/nginx --with-http_stub_status_module --with-http_ssl_module --with-pcre=/Data/tgz/pcre-8.32 --with-http_realip_module --with-http_image_filter_module
    make
    make install
    cd ../
    1 ./configure 
    2 --user=www                             设置nginx运行时以什么用户来运行worker进程(默认为nobody用户)
    3 --group=www                         设置nginx运行时以什么组来运行worker进程(默认为nobody组)
    4 --prefix=/Data/apps/nginx             指明nginx的安装所在路径
    5 --with-http_stub_status_module         启用 “server status” 页 
    6 --with-http_ssl_module                 开启HTTP SSL模块,使NGINX可以支持HTTPS请求。这个模块需要已经安装了OPENSSL,在DEBIAN上是libssl 
    7 --with-pcre=/Data/tgz/pcre-8.32     指定 PCRE 库的源代码的路径
    8 --with-http_realip_module             启用 ngx_http_realip_module 
    9 --with-http_image_filter_module        nginx提供的集成图片处理模块  HttpImageFilterModule模块需要依赖gd-devel的支持,可以使用yum或apt-get方便地安装,如果未安装回报“/configure: error: the HTTP image filter module requires the GD library.”错误
    nginx编译安装参数

     2、安装 MySQL:

    wget http://downloads.mysql.com/archives/mysql-5.6/mysql-5.6.10-linux-glibc2.5-x86_64.tar.gz
    tar zxvf mysql-5.6.10-linux-glibc2.5-x86_64.tar.gz
    mv mysql-5.6.10-linux-glibc2.5-x86_64 /Data/apps/mysql
    /usr/sbin/groupadd mysql
    /usr/sbin/useradd -g mysql mysql
    mkdir -p /Data/data/mysql/data
    yum install libaio
    /Data/apps/mysql/scripts/mysql_install_db --basedir=/Data/apps/mysql --datadir=/Data/data/mysql/data --user=mysql
    
    sed -i "s#/usr/local/mysql#/Data/apps/mysql#g" /Data/apps/mysql/bin/mysqld_safe

    3、安装php依赖库

    php处理图形的扩展库,安装GD库前得先安装freetype、libpng、jpegsrc、zlib等关联库

    mkdir -p /Data/apps/libs/
    wget http://www.ijg.org/files/jpegsrc.v9.tar.gz     
    tar zxvf jpegsrc.v9.tar.gz
    cd jpeg-9/
    ./configure --prefix=/Data/apps/libs --enable-shared --enable-static --prefix=/Data/apps/libs
    make
    make install
    cd ../
    wget http://prdownloads.sourceforge.net/libpng/libpng-1.6.2.tar.gz
    tar zxvf libpng-1.6.2.tar.gz
    cd libpng-1.6.2/
    ./configure --prefix=/Data/apps/libs
    make
    make install
    cd ../
    wget http://download.savannah.gnu.org/releases/freetype/freetype-2.4.12.tar.gz
    tar zxvf freetype-2.4.12.tar.gz
    cd freetype-2.4.12/
    ./configure --prefix=/Data/apps/libs
    make
    make install
    ********************************** 报错 start *********************************
    
    当 make install 时总是:
    
    
    rm -f /usr/local/modules/freetype/include/freetype2/freetype/cache/*
    
    rmdir /usr/local/modules/freetype/include/freetype2/freetype/cache
    
    rm -f /usr/local/modules/freetype/include/freetype2/freetype/internal/*
    
    rmdir /usr/local/modules/freetype/include/freetype2/freetype/internal
    
    rmdir: ‘/usr/local/modules/freetype/include/freetype2/freetype/internal’: 没有那个文件或目录
    
    make: [install] 错误 1 (忽略)
    
    /usr/bin/install -c -m 644 ./builds/unix/ft2unix.h 
    
              /usr/local/modules/freetype/include/ft2build.h
    
    /usr/bin/install -c -m 644 ./builds/unix/ftconfig.h                        
    
              /usr/local/modules/freetype/include/freetype2/freetype/config/ftconfig.h
    
    /usr/bin/install -c -m 644 /opt/src/lamp/freetype-2.2.1/objs/ftmodule.h                          
    
              /usr/local/modules/freetype/include/freetype2/freetype/config/ftmodule.h
    
    /usr/bin/install -c -m 755 ./builds/unix/freetype-config 
    
              /usr/local/modules/freetype/bin/freetype-config
    
    /usr/bin/install -c -m 644 ./builds/unix/freetype2.m4 
    
              /usr/local/modules/freetype/share/aclocal/freetype2.m4
    
    /usr/bin/install -c -m 644 ./builds/unix/freetype2.pc 
    
              /usr/local/modules/freetype/lib/pkgconfig/freetype2.pc
    
    (报错)
    
    解决办法:
    
    mkdir /Data/apps/libs/include/freetype2/freetype/internal
    
    需要在freetype的安装目录下创建internal 这个目录然后,
    
    make install
    
    ********************************** 报错 end *********************************
    cd ../

    php加密扩展库

    wget "http://downloads.sourceforge.net/mcrypt/libmcrypt-2.5.8.tar.gz?big_mirror=0"
    tar zxvf libmcrypt-2.5.8.tar.gz
    cd libmcrypt-2.5.8/
    ./configure --prefix=/Data/apps/libs
    make
    make install
    cd libltdl/
    ./configure --prefix=/Data/apps/libs --enable-ltdl-install
    make
    make install
    cd ../../

     mhash的可以用于创建校验数值,消息摘要,消息认证码,以及无需原文的关键信息保存(如密码)等。

    wget "http://downloads.sourceforge.net/mhash/mhash-0.9.9.9.tar.gz?big_mirror=0"
    tar zxvf mhash-0.9.9.9.tar.gz
    cd mhash-0.9.9.9/
    ./configure --prefix=/Data/apps/libs
    make
    make install
    cd ../
    
    vi /etc/ld.so.conf
    
    添加:
    /Data/apps/libs/lib
    
    然后:
    ldconfig

    Mcrypt扩展库可以实现加密解密功能,就是既能将明文加密,也可以密文还原。

    wget "http://downloads.sourceforge.net/mcrypt/mcrypt-2.6.8.tar.gz?big_mirror=0"
    tar zxvf mcrypt-2.6.8.tar.gz
    cd mcrypt-2.6.8/
    export LDFLAGS="-L/Data/apps/libs/lib -L/usr/lib"
    export CFLAGS="-I/Data/apps/libs/include -I/usr/include"
    touch malloc.h
    ./configure --prefix=/Data/apps/libs --with-libmcrypt-prefix=/Data/apps/libs
    make
    make install
    cd ../

    4、编译安装PHP 5.5

    wget http://www.php.net/get/php-5.5.1.tar.gz/from/tw2.php.net/mirror
    
    tar zxvf php-5.5.1.tar.gz
    
    cd php-5.5.1/
    
    export LIBS="-lm -ltermcap -lresolv"
    
    export DYLD_LIBRARY_PATH="/Data/apps/mysql/lib/:/lib/:/usr/lib/:/usr/local/lib:/lib64/:/usr/lib64/:/usr/local/lib64"
    
    export LD_LIBRARY_PATH="/Data/apps/mysql/lib/:/lib/:/usr/lib/:/usr/local/lib:/lib64/:/usr/lib64/:/usr/local/lib64"
    
    ./configure --prefix=/Data/apps/php --with-config-file-path=/Data/apps/php/etc --with-mysql=/Data/apps/mysql --with-mysqli=/Data/apps/mysql/bin/mysql_config --with-iconv-dir --with-freetype-dir=/Data/apps/libs --with-jpeg-dir=/Data/apps/libs --with-png-dir=/Data/apps/libs --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --enable-mbregex --enable-fpm --enable-mbstring --with-mcrypt=/Data/apps/libs --with-gd --enable-gd-native-ttf --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --enable-opcache --with-pdo-mysql --enable-maintainer-zts
    
    make
    
    make install
    
    cp php.ini-development /Data/apps/php/etc/php.ini
    
    cd ../
    ln -s /Data/apps/mysql/lib/libmysqlclient.18.dylib /usr/lib/libmysqlclient.18.dylib mv /Data/apps/php/etc/php-fpm.conf.default /Data/apps/php/etc/php-fpm.conf
     1 ./configure 
     2 --prefix=/Data/apps/php                             是指PHP的安装目录
     3 --with-config-file-path=/Data/apps/php/etc             php.ini文件位置
     4 --with-mysql=/Data/apps/mysql                         包含MySQL支持
     5 --with-mysqli=/Data/apps/mysql/bin/mysql_config     包含MySQLi支持。参数为mysql_config的位置。
     6 --with-iconv-dir 
     7 --with-freetype-dir=/Data/apps/libs 
     8 --with-jpeg-dir=/Data/apps/libs          打开对jpeg图片的支持
     9 --with-png-dir=/Data/apps/libs             打开对png图片的支持
    10 --with-zlib                             ##–-with-zlib-dir     打开zlib库的支持
    11 --with-libxml-dir=/usr             打开libxml2库的支持
    12 --enable-xml 
    13 --disable-rpath                 禁用在搜索路径中传递其他运行库。
    14 --enable-bcmath                 打开图片大小调整,用到zabbix监控的时候用到了这个模块
    15 --enable-shmop 
    16 --enable-sysvsem 
    17 --enable-inline-optimization 
    18 --with-curl                     打开curl浏览工具的支持
    19 --enable-mbregex 
    20 --enable-fpm                     打上php-fpm 补丁后才有这个参数,cgi方式安装的启动程序
    21 --enable-mbstring                 多字节,字符串的支持
    22 --with-mcrypt=/Data/apps/libs     加密算法
    23 --with-gd                         打开gd库的支持
    24 --enable-gd-native-ttf             支持TrueType字符串函数库
    25 --with-openssl                     openssl的支持,加密传输时用到的
    26 --with-mhash                     加密算法
    27 --enable-pcntl                      freeTDS需要用到的,可能是链接mssql 才用到
    28 --enable-sockets                  打开 sockets 支持
    29 --with-xmlrpc                     打开xml-rpc的c语言
    30 --enable-zip                     打开对zip的支持
    31 --enable-soap 
    32 --enable-opcache 
    33 --with-pdo-mysql 
    34 --enable-maintainer-zts
    php编译安装时的参数

    5、编译安装PHP扩展

    wget http://ftp.gnu.org/gnu/autoconf/autoconf-latest.tar.gz
    
    tar zxvf autoconf-latest.tar.gz
    
    cd autoconf-2.69/
    
    ./configure --prefix=/Data/apps/libs
    
    make
    
    make install
    
    cd ../
    wget http://pecl.php.net/get/memcache-2.2.7.tgz
    
    tar zxvf memcache-2.2.7.tgz
    
    cd memcache-2.2.7/
    
    export PHP_AUTOCONF="/Data/apps/libs/bin/autoconf"
    
    export PHP_AUTOHEADER="/Data/apps/libs/bin/autoheader"
    
    /Data/apps/php/bin/phpize
    
    ./configure --with-php-config=/Data/apps/php/bin/php-config
    
    make
    
    make install
    
    cd ../

    打开 /Data/apps/php/etc/php.ini 查找 ; extension_dir = "ext"

      在其后增加一行:

      extension = "memcache.so"

    原链接:http://zyan.cc/nginx_php_v7/





  • 相关阅读:
    SQL 2012 Group By Rollup, Grouping
    SQL 2012 Restore HeaderOnly
    EasyPerformanceCounterHelper
    并发异步处理队列 .NET 4.5+ (改进性能计数器) 2013-11-16
    CodeTimerPerformance EasyPerformanceCounterHelper .NET 4.5
    csc.rsp Nuget MVC/WebAPI 5.0、SignalR 2.0、Rx、Json、Azure、EntityFramework、OAuth、Spatial
    MEF Parts Sample
    免费超高速卡片式病人基本信息列表控件
    微观云计算系列谈之一:基本概念
    golang 无法将Slice类型[]a 转换为 Slice[]b
  • 原文地址:https://www.cnblogs.com/yhdsir/p/4907686.html
Copyright © 2020-2023  润新知