king71 发表于 2015-11-16 12:09:08

LNMP环境搭建(linux+ngnix+mysql+php)

我准备好咯安装包的(百度云盘http://pan.baidu.com/s/1c04powo)

一、nginx的编译安装新装的Ubuntu系统   apt-get install gcc    apt-get install g++    首先,编译安装nginx,nginx依赖于zlib和pcre    tar -zxvf zlib-1.2.8.tar.gz    cd zlib-1.2.8    ./configure     make && make install      cd ..    tar -xf pcre-8.36.tar.bz2    cd pcre-8.36   ./configure make && make install

    zlib和pcre都是直接configure后make && make install
    现在编译nginx    cd ..    tar -zxvf nginx-1.9.0.tar.gz    cd nginx-1.9.0
    首先添加nginx用户    useradd nginx -s /sbin/nologin -M
    如果你要添加opensslopenssl使用的是源码包    cd ..    tar -zxvf openssl-1.0.2a.tar.gz
    配置nginx    cd ..
    cd nginx-1.9.0    ./configure --user=nginx --group=nginx --prefix=/usr/local/nginx--with-http_stub_status_module --with-http_ssl_module --with-openssl=/home/env/lnmp/openssl-1.0.2a/home/fangyue/work/lnmp/openssl-1.0.2a    make && make install
    至此,nginx就编译好咯    cd /usr/local/nginx/    ./sbin/nginx -thttp://onexin.iyunv.com/source/plugin/onexin_bigdata/file:///C:/Users/fangyue/AppData/Local/YNote/data/854289665@qq.com/dc9cbc503c794b0ab23108a1eb30de3a/clipboard.pngls /usr/local/lib/cd /etc/ld.so.conf.d/nano usr-lib.conf/usr/local/libldconfig/usr/local/nginx/sbin/nginx -t/usr/local/nginx/sbin/nginx测试;浏览器访问 localhost
二、mysql的编译安装
    接下来是搞mysql       我使用的mysql5.5 所以需要使用cmake方式进行编译    cd /home/fangyue/work/lnmp/    tar -zxvf cmake-3.2.2.tar.gz   cd cmake-3.2.2   ./configure    make && make install          cmake你可以直接使用yum或者apt-get安装
    注意:cmake如果是编译安装的话,centos和mint的提示是不一样的,根据提示进行操作就可以 cd .. sudo apt-get install libncurses5-dev    sudo apt-get install bison
tar -zxvfmysql-5.5.44.tar.gzcd mysql-5.5.44
    添加mysql组和mysql用户
    groupadd mysql    useradd mysql -s /sbin/nologin -g mysql -M
    cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/data -DMYSQL_UNIX_ADDR=/usr/local/mysql/tmp/mysql.sock -DENABLED_LOCAL_INFILE=ON -DWITH_INNOBASE_STORAGE_ENGINE=1-DWITH_FEDERATED_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 -DWITH_FAST_MUTEXES=1 -DWITH_ZLIB=bundled -DENABLED_LOCAL_INFILE=1 -DWITH_READLINE=1 -DWITH_EMBEDDED_SERVER=1      make && make install   
    创建数据目录    mkdir -p /usr/local/mysql/data    chown -R mysql.mysql /usr/local/mysql        chmod -R 777 /tmp/
    初始化数据库   cd /usr/local/mysql/    cd scripts/    ./mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql
    复制配置文件 cd /home/fangyue/work/lnmp/mysql-5.5.44    cp support-files/my-small.cnf /etc/my.cnf
    复制启动文件   cp support-files/mysql.server /etc/init.d/mysqld    chmod +x /etc/init.d/mysqld    nano /etc/my.cnf #如果启动不了,可以修改一下配置文件,添加datadir = 你配置的路径   http://onexin.iyunv.com/source/plugin/onexin_bigdata/file:///C:/Users/fangyue/AppData/Local/YNote/data/854289665@qq.com/c1582849dc984612a4cc9386c0c5c846/clipboard.png    service mysqld start(还是启动不了在下面加一行federated)
    为root用户提供密码    #usr/local/mysql/bin/mysqladmin -u root password '123456'      设置环境变量    nano /etc/profile    PATH=$PATH:/usr/local/mysql/bin/    . /etc/profile    mysql -u root -p
    至此mysql就编译安装好咯,至于php留着下次编译,下班回家

三、php的编译安装    其实LAMP和LNMP其实差不多,主要是apache是把php作为模块编译,而nginx是作为fast-cgi,php是进程
php依赖编译安装(1)、libxml2-2.7.2.tar.gz    tar xf libxml2-2.7.2.tar.gz    cd libxml2-2.7.2    ./configure --prefix=/usr/local/libxml2    make && make install
(2)、jpegsrc.v9a.tar.gz    mkdir -p /usr/local/jpeg9    mkdir -p /usr/local/jpeg9/bin    mkdir -p /usr/local/jpeg9/lib    mkdir -p /usr/local/jpeg9/include    mkdir -p /usr/local/jpeg9/man    mkdir -p /usr/local/jpeg9/man1    mkdir -p /usr/local/jpeg9/man/man1
    tar xf jpegsrc.v9a.tar.gz    cd jpeg-9a    ./configure --prefix=/usr/local/jpeg9/ --enable-shared --enable-static    make && make install
(3)、libpng-1.6.10.tar.gz    tar xf libpng-1.6.10.tar.gz    cd libpng-1.6.10    ./configure --prefix=/usr/local/png    make && make install
(4)、freetype-2.5.5.tar.bz2    tar xf freetype-2.5.5.tar.bz2    cd freetype-2.5.5    mkdir -p /usr/local/freetype    ./configure --prefix=/usr/local/freetype    make && make install
(5)、libiconv-1.14.tar.gztar xf libiconv-1.14.tar.gz    cd libiconv-1.14    cd srclib    gedit stdio.in.h通过搜索,定位到_GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");这一行,然后在这一行的前后加上条件编译即可,修改后的内容如下:    #if defined(__GLIBC__) && !defined(__UCLIBC__) && !__GLIBC_PREREQ(2, 16)            _GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");    #endif
./configure --prefix=/usr/local/iconv    make && make install
   
(6)、curl-7.42.1.tar.gz    tar xf curl-7.42.1.tar.gz    cd curl-7.42.1    ./configure --prefix=/usr/local/curl    make && make install
(7)、libgd-2.1.0.tar.gz    tar xf libgd-2.1.0.tar.gz    cd libgd-2.1.0    ./configure --prefix=/usr/local/gd\ --with-jpeg=/usr/local/jpeg9/ \ --with-png=/usr/local/png    \    --with-zlib \ --with-freetype=/usr/local/freetype    make && make install

(8)、libmcrypt-2.5.8.tar.bz2    tar xf libmcrypt-2.5.8.tar.bz2    cd libmcrypt-2.5.8    ./configure    make && make install
(9)、mhash-0.9.9.9.tar.bz2    tar xf mhash-0.9.9.9.tar.bz2    cd mhash-0.9.9.9    ./configure    make && make install
(10)、mcrypt-2.6.8.tar.gz    tar xf mcrypt-2.6.8.tar.gz    cd mcrypt-2.6.8    注意config的时候会提示找不到libmcrpyt    解决:ln -s /usr/local/bin/libmcrypt-config /usr/bin/libmcrypt-config   export LD_LIBRARY_PATH=/usr/local/lib: LD_LIBRARY_PATH    ./configure    make && make install
(11)、php5.6.8编译php-5.6.8.tar.gz
    tar xf php-5.6.8.tar.gz    cdphp-5.6.8    ./configure --prefix=/usr/local/php-nginx \    --with-mysql=/usr/local/mysql \    --with-pdo-mysql=mysqlnd \    --with-mysqli=mysqlnd \    --with-freetype-dir=/usr/local/freetype \    --with-gd=/usr/local/gd \    --with-zlib \    --with-libxml-dir=/usr/local/libxml2 \    --with-jpeg-dir=/usr/local/jpeg9 \    --with-png-dir=/usr/local/png \    --with-curl=/usr/local/curl \    --with-mhash \    --enable-mbstring \    --enable-xml \    --enable-shmop \    --enable-sysvsem \    --enable-bcmath \    --enable-fpm \    --enable-gd-native-ttf \    --enable-sockets \    --enable-zip \    --enable-soap \    --with-fpm-user=nginx \    --with-fpm-group=nginx \    --enable-ftp \    --enable-shared
    make && make install    如果在make php-5.5.5时提示没有X11/xpm.h    则安装 apt-get install libXpm-dev    再make && make install
(12)、配置修改/usr/local/nginx/conf/nginx.confcd /usr/local/nginx/confnano nginx.confhttp://onexin.iyunv.com/source/plugin/onexin_bigdata/file:///C:/Users/fangyue/AppData/Local/YNote/data/854289665@qq.com/0d19d1c1198c4a578f087095a5211e93/clipboard.pngfastcgi_param SCRIPT_FILENAME$document_root/$fastcgi_script_name;http://onexin.iyunv.com/source/plugin/onexin_bigdata/file:///C:/Users/fangyue/AppData/Local/YNote/data/854289665@qq.com/6c31939464b24e77b2ee9ca53d9cd8e9/clipboard.png复制配置文件    cp /home/fangyue/work/lnmp/php-5.6.8/php.ini-development /usr/local/php-nginx/lib/php.ini

    cd /usr/local/php-nginx/etc    cp php-fpm.conf.default php-fpm.conf    /usr/local/nginx/sbin/nginx    /usr/local/php-nginx/sbin/php-fpmcd /usr/local/nginx/html    nano phpinfo.php    <?php    phpinfo();    ?>

/usr/local/nginx/sbin/nginx -s reload
# ./nginx -s reloadnginx: open() &quot;/usr/local/nginx/logs/nginx.pid&quot; failed (2: No such file or directory)解决方法:# /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

安装包在我的云盘里面http://pan.baidu.com/s/1c04powo
         版权声明:本文为博主原创文章,未经博主允许不得转载。
页: [1]
查看完整版本: LNMP环境搭建(linux+ngnix+mysql+php)