zoukankan      html  css  js  c++  java
  • CentOS6.5 编译安装lnmp环境

    参考:http://54im.com/tag/libmcrypt

    http://www.educity.cn/linux/1240338.html

    1. 设置防火墙,并开启3306 80端口:vi /etc/sysconfig/iptables && service iptables stop && service iptables start
    2. yum清缓存并更新:yum clean all && yum update
    3. 下载安装编译工具和依赖包 :
      yum -y install cmake 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 libXpm* wget pcre-devel zlib-devel gd-devel libjpeg-devel libpng-devel freetype-devel libxml2-devel bison automake zlib* libxml* ncurses-devel libtool-ltdl-devel* unzip
    4. 下载安装包
      1. 创建存放源码的目录
        mkdir /opt/src && cd /opt/src
      2. wget下载程序源码
        wget http://nginx.org/download/nginx-1.7.8.tar.gz #最新 
        wget http://cn2.php.net/distributions/php-5.4.36.tar.gz 
        wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.22.tar.gz #mysql5.6 
        
        wget http://downloads.sourceforge.net/project/mcrypt/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.gz?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fmcrypt%2Ffiles%2FLibmcrypt%2F2.5.8%2F&ts=1418528625&use_mirror=tcpdiag
        wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz

        wget http://downloads.sourceforge.net/project/mhash/mhash/0.9.9.9/mhash-0.9.9.9.tar.gz?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fmhash%2Ffiles%2Fmhash%2F0.9.9.9%2F&ts=1418530194&use_mirror=hivelocity
        wget http://downloads.sourceforge.net/project/mcrypt/MCrypt/2.6.8/mcrypt-2.6.8.tar.gz?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fmcrypt%2Ffiles%2FMCrypt%2F2.6.8%2F&ts=1418531968&use_mirror=softlayer-dal
        wget http://ftp.gnu.org/gnu/bison/bison-3.0.tar.gz
        wget http://www.cmake.org/files/v3.1/cmake-3.1.0.tar.gz
        wget "http://downloads.sourceforge.net/mhash/mhash-0.9.9.9.tar.gz?modtime=1175740843&big_mirror=0"
        wget https://github.com/eaccelerator/eaccelerator/archive/master.zip -O eaccelerator.zip
        #更名
        mv libmcrypt-2.5.8.tar.gz?r=http:%2F%2Fsourceforge.net%2Fprojects%2Fmcrypt%2Ffiles%2FLibmcrypt%2F2.5.8%2F libmcrypt-2.5.8.tar.gz


      3. 重命名压缩包
        mv libmcrypt-2.5.8.tar.gz?r=http:%2F%2Fsourceforge.net%2Fprojects%2Fmcrypt%2Ffiles%2FLibmcrypt%2F2.5.8%2F libmcrypt-2.5.8.tar.gz
        mv mcrypt-2.6.8.tar.gz?r=http:%2F%2Fsourceforge.net%2Fprojects%2Fmcrypt%2Ffiles%2FMCrypt%2F2.6.8%2F mcrypt-2.6.8.tar.gz
        mv mhash-0.9.9.9.tar.gz?r=http:%2F%2Fsourceforge.net%2Fprojects%2Fmhash%2Ffiles%2Fmhash%2F0.9.9.9%2F mhash-0.9.9.9.tar.gz
        mv eaccelerator-0.9.6.1.tar.bz2?r=http:%2F%2Fsourceforge.net%2Fprojects%2Feaccelerator%2Ffiles%2Feaccelerator%2FeAccelerator%200.9.6.1%2F eaccelerator-0.9.6.1.tar.bz2
      4. 安装libiconv、libmcrypt、libltdl、mhash、mcrypt
         tar zxvf mhash-0.9.9.9.tar.gz && cd mhash-0.9.9.9
         ./configure && make && make install
        ln -s /usr/local/lib/libmcrypt.la /usr/lib/libmcrypt.la
        ln -s /usr/local/lib/libmcrypt.so /usr/lib/libmcrypt.so
        ln -s /usr/local/lib/libmcrypt.so.4 /usr/lib/libmcrypt.so.4
        ln -s /usr/local/lib/libmcrypt.so.4.4.8 /usr/lib/libmcrypt.so.4.4.8
        ln -s /usr/local/lib/libmhash.a /usr/lib/libmhash.a
        ln -s /usr/local/lib/libmhash.la /usr/lib/libmhash.la
        ln -s /usr/local/lib/libmhash.so /usr/lib/libmhash.so
        ln -s /usr/local/lib/libmhash.so.2 /usr/lib/libmhash.so.2
        ln -s /usr/local/lib/libmhash.so.2.0.1 /usr/lib/libmhash.so.2.0.1
        ln -s /usr/local/bin/libmcrypt-config /usr/bin/libmcrypt-config
         tar zxvf libmcrypt-2.5.8.tar.gz && cd libmcrypt-2.5.8
        ./configure && make && make install
        /sbin/ldconfig
        cd libltdl/
        ./configure -enable-ltdl-install
        make && make install
         tar zxvf libiconv-1.14.tar.gz && cd libiconv-1.14
        ./configure --prefix=/opt
        make && make install
      5. tar zxvf mcrypt-2.6.8.tar.gz && cd mcrypt-2.6.8
        /sbin/ldconfig && ./configure && make && make install
      6. 安装cmake
        tar zxvf cmake-3.1.0.tar.gz && cd cmake-3.1.0  && ./configure --prefix=/usr && gmake && gmake install
      7. 安装bison
         tar zxvf bison-3.0.tar.gz && cd bison-3.0
        ./configure && make && make install
      8. 准备用户、目录
        groupadd mysql
        useradd -g mysql mysql
        groupadd www
        useradd -g www www
        mkdir -p /data/mysql
        chown -R mysql:mysql /data/mysql
        mkdir -p /data/www
        chown -R www:www /data/www
      9. 安装mysql
        1. 编译:

          tar zxvf mysql-5.6.22.tar.gz && cd mysql-5.6.22
          cmake -DCMAKE_INSTALL_PREFIX=/opt/mysql -DMYSQL_DATADIR=/data/mysql -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_MYISAM_STORAGE_ENGINE=1 -DSYSCONFDIR=/etc/ -DWITH_SSL=yes -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_READLINE=on
          make && make install && ln -s /opt/mysql/lib/lib* /usr/lib/
        2. 配置:

          /opt/mysql/scripts/mysql_install_db --basedir=/opt/mysql/ --datadir=/data/mysql --user=mysql
          cd /opt/mysql/support-files
          cp my-default.cnf /etc/my.cnf
        3. 初始化并自启动

          #初始化
          cp /opt/mysql/support-files/mysql.server /etc/rc.d/init.d/mysqld
          chkconfig --add mysqld
          chkconfig mysqld on
          #启动mysql
          /etc/rc.d/init.d/mysqld start
          #设置mysql登录密码
          cd /opt/mysql && bin/mysql_secure_installation
      10. 安装php
        1. 编译:

          tar zxvf php-5.4.36.tar.gz && cd php-5.4.36
          ./configure --prefix=/opt/php --with-mysql=/opt/mysql --with-mysqli=/opt/mysql/bin/mysql_config --with-iconv-dir=/opt/src/libiconv-1.14 --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --with-curlwrappers --enable-mbregex --enable-fpm --enable-mbstring --with-mcrypt --with-gd --enable-gd-native-ttf --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-ldap --with-ldap-sasl --with-xmlrpc --enable-zip --enable-soap && make && make install
        2. 或者:./configure --prefix=/usr/local/php  --enable-fpm --with-iconv=/usr/local/bin/libiconv --with-mcrypt=/usr/local/bin/libmcrypt --enable-mbstring --disable-pdo --with-curl --disable-debug  --disable-rpath --enable-inline-optimization --with-bz2  --with-zlib --enable-sockets --enable-sysvsem --enable-sysvshm --enable-pcntl --enable-mbregex --with-mhash --enable-zip --with-pcre-regex --with-mysql --with-mysqli --with-gd --with-jpeg-dir
        3. 配置php.ini
          cp php.ini-development /usr/local/php/etc/php.ini 

          安装扩展

          #安装
          unzip eaccelerator.zip &&  cd eaccelerator-master
          ./configure --enable-eaccelerator=shared --with-php-config=/opt/php/bin/php-config
          make && make install
          
          #配置
          zend_extension="/opt/php/lib/php/extensions/no-debug-non-zts-20090626/eaccelerator.so"#检查是否存在
          eaccelerator.shm_size="64"
          eaccelerator.cache_dir="/tmp/eaccelerator"
          eaccelerator.enable="1"
          eaccelerator.optimizer="1"
          eaccelerator.check_mtime="1"
          eaccelerator.debug="0"
          eaccelerator.log_file = "/opt/php/var/log/eaccelerator_log"
          eaccelerator.filter=""
          eaccelerator.shm_max="0"
          eaccelerator.shm_ttl="3600"
          eaccelerator.shm_prune_period="3600"
          eaccelerator.shm_only="0"
          eaccelerator.compress="1"
          eaccelerator.compress_level="9"
          
          #创建目录
          mkdir -p /tmp/eaccelerator
        4. 配置php-fpm

          cp /opt/php/etc/php-fpm.conf.default /opt/php/etc/php-fpm.conf
          vi /opt/php/etc/php-fpm.conf
          #几处修改,user/group要设好,其它选项可以自己调整
          [global]
          pid = run/php-fpm.pid
          error_log = log/php-fpm.log
          emergency_restart_threshold = 10
          emergency_restart_interval = 1m
          process_control_timeout = 5s
          [www]
          user = www
          group = www

          更改php.ini 设置时区

          vi etc/php.ini 
          date.timezone = PRC
      11. 安装nginx
        1. 安装PCRE

          wget http://downloads.sourceforge.net/project/pcre/pcre/8.36/pcre-8.36.tar.gz?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fpcre%2Ffiles%2Fpcre%2F8.36%2F&ts=1418696677&use_mirror=iwebhttp://downloads.sourceforge.net/project/pcre/pcre/8.36/pcre-8.36.tar.gz?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fpcre%2Ffiles%2Fpcre%2F8.36%2F&ts=1418696677&use_mirror=iweb -O pcre-8.36.tar.gz
          mv pcre-8.36.tar.gz?r=http:%2F%2Fsourceforge.net%2Fprojects%2Fpcre%2Ffiles%2Fpcre%2F8.36%2F pcre-8.36.tar.gz
          tar zxvf pcre-8.36.tar.gz && cd pcre-8.36
          ./configure make && make install
        2. 安装nginx
          tar zxvf nginx-1.7.8.tar.gz && cd nginx-1.7.8
          ./configure --user=www --group=www --prefix=/opt/nginx --with-http_stub_status_module --with-http_ssl_module
          make && make install
        3. 配置nginx
          1. vim /usr/local/nginx/conf/nginx.conf
            user www www;
            worker_processes  1;
            
            error_log  logs/error.log;
            #error_log  logs/error.log  notice;
            #error_log  logs/error.log  info;
            
            pid        logs/nginx.pid;
            
            
            events {
                use epoll;
                worker_connections  1024;
            }
            
            http {
                include       mime.types;
                default_type  application/octet-stream;
            
                #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                #                  '$status $body_bytes_sent "$http_referer" '
                #                  '"$http_user_agent" "$http_x_forwarded_for"';
            
                #access_log  logs/access.log  main;
            
                sendfile        on;
                tcp_nopush     on;
            
                #keepalive_timeout  0;
                keepalive_timeout  65;
            
                gzip  on;
                gzip_min_length 1k;
                gzip_buffers 4 16k;
                gzip_comp_level 2;
                gzip_types text/plain application/x-javascript text/css application/xml;
                server {
                    listen       80;
                    server_name  localhost;
            
                    #charset koi8-r;
            
                    #access_log  logs/host.access.log  main;
            
                    location / {
                        root   /data/www;
                        index  index.html index.htm index.php;
                    }
            
                    error_page  404              /404.html;
            
                    # redirect server error pages to the static page /50x.html
                    #
                    error_page   500 502 503 504  /50x.html;
                    location = /50x.html {
                        root   html;
                    }
            
                    # proxy the PHP scripts to Apache listening on 127.0.0.1:80
                    #
                    #location ~ .php$ {
                    #    proxy_pass   http://127.0.0.1;
                    #}
            
                    # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
                    #
                    location ~ .php$ {
                        root           html;
                        fastcgi_pass   127.0.0.1:9000;
                        fastcgi_index  index.php;
                        fastcgi_param  SCRIPT_FILENAME  /data/www$fastcgi_script_name;
                        include        fastcgi_params;
                    }
            
                    # deny access to .htaccess files, if Apache's document root
                    # concurs with nginx's one
                    #
                    #location ~ /.ht {
                    #    deny  all;
                    #}
                }

             启动nginx和php-fpm

            /opt/nginx/sbin/nginx
            /opt/php/sbin/php-fpm
    jdhu 标记:
  • 相关阅读:
    snmp简介
    PKI简介
    小程序收藏
    mysql数据库中同一DB内倒表指令
    核心层+汇聚层+接入层
    eng
    rmon简介
    几个常用的JavaScript字符串处理函数
    C# 特性(Attribute)学习 关于 .net中[]的解释
    C#操作Excel文件(读取Excel,写入Excel)
  • 原文地址:https://www.cnblogs.com/jdhu/p/4166190.html
Copyright © 2011-2022 走看看