(文章来自:http://www.cnblogs.com/i-it/p/3841840.html,请各位到这个网址去看原文的)

LNMP(Linux-Nginx-Mysql-PHP),本文在CentOS7.0上编译LNMP尝尝鲜,全文基本上都是采用手动编译部署...依赖yum帮我安装了GCC和automake..写这个东西耗时有点久了...尼玛 太花时间啦,Linux运维交流群:344177552

主要软件版本:

nginx-1.6.0
php-5.3.5
mysql-5.5.6

yum源配置(其实没什么改动)

[root@ipython ~]# cat /etc/yum.repos.d/1.repo 
[1]
name=1
baseurl=file:///media
enabled=1
gpgcheck=0 [root@ipython ~]# mount /dev/cdrom /media && yum clean all
mount: /dev/sr0 is write-protected, mounting read-only
Loaded plugins: fastestmirror
Cleaning repos: 1
Cleaning up everything

编译工具安装

[root@ipython ~]# yum install gcc-c++ automake autoconf bzip2

zlib库(提供数据压缩用的函式库):

[root@ipython lnmp]# tar zxf zlib-1.2.8.tar.gz 
[root@ipython lnmp]# cd zlib-1.2.8
[root@ipython zlib-1.2.8]# ./configure --prefix=/software/sharelib
[root@ipython zlib-1.2.8]# make && make install

pcre库(rewrite的支持)

[root@ipython lnmp]# tar zxf pcre-8.35.tar.gz 
[root@ipython lnmp]# cd pcre-8.35
[root@ipython pcre-8.35]# ./configure --prefix=/software/pcre --enable-utf8 --enable-unicode-properties
[root@ipython pcre-8.35]# make && make install

OpenSSL库(https的支持)

[root@ipython lnmp]# tar zxf openssl-1.0.1h.tar.gz 
[root@ipython lnmp]# cd openssl-1.0.1h
[root@ipython openssl-1.0.1h]# ./config --prefix=/software/openssl
[root@ipython openssl-1.0.1h]# make && make install

TCMalloc工具(google内存管理套件)

[root@ipython lnmp]# tar zxf libunwind-1.1.tar.gz 
[root@ipython lnmp]# cd libunwind-1.1
[root@ipython libunwind-1.1]# CFLAGS=-fPIC ./configure --prefix=/software/google-libunwind
[root@ipython libunwind-1.1]# make CFLAGS=-fPIC && make CFLAGS=-fPIC install [root@ipython lnmp]# tar zxf gperftools-2.2.tar.gz 
[root@ipython lnmp]# cd gperftools-2.2
[root@ipython gperftools-2.2]# LDFLAGS="-L/software/google-libunwind/lib" CPPFLAGS="-I/software/google-libunwind/include" ./configure --prefix=/software/google-perftools
[root@ipython gperftools-2.2]# make && make install ###路径加到动态链接库###
[root@ipython gperftools-2.2]# echo "/software/google-libunwind/lib/" >> /etc/ld.so.conf
[root@ipython gperftools-2.2]# echo "/software/google-perftools/lib/" >> /etc/ld.so.conf
[root@ipython gperftools-2.2]# echo "/software/sharelib/lib/" >> /etc/ld.so.conf && ldconfig

Nginx(不解释)

[root@ipython lnmp]# groupadd -g 1500 nginx
[root@ipython lnmp]# useradd -M -u 1500 -g nginx -s /sbin/nologin nginx
[root@ipython lnmp]# mkdir /var/tmp/nginx
[root@ipython lnmp]# chown nginx:nginx /var/tmp/nginx/
[root@ipython lnmp]# tar zxf nginx-1.6.0.tar.gz 
[root@ipython lnmp]# cd nginx-1.6.0
[root@ipython nginx-1.6.0]# sed -i 's/CFLAGS="$CFLAGS -g"/#CFLAGS="$CFLAGS -g"/' auto/cc/gcc
[root@ipython nginx-1.6.0]# sed -i "s#/usr/local#/software/google-perftools#" auto/lib/google-perftools/conf
##配置参数有点长##
[root@ipython nginx-1.6.0]# ./configure --prefix=/software/nginx --user=nginx --group=nginx --with-http_stub_status_module --with-http_ssl_module --with-http_realip_module --with-http_gzip_static_module --with-debug --http-client-body-temp-path=/var/tmp/nginx/client --http-proxy-temp-path=/var/tmp/nginx/proxy --http-fastcgi-temp-path=/var/tmp/nginx/fastcgi --http-uwsgi-temp-path=/var/tmp/nginx/uwsgi --http-scgi-temp-path=/var/tmp/nginx/scgi --with-pcre=/root/lnmp/pcre-8.35 --with-openssl=/root/lnmp/openssl-1.0.1h --with-zlib=/root/lnmp/zlib-1.2.8 --with-google_perftools_module
[root@ipython nginx-1.6.0]# make && make install [root@ipython nginx-1.6.0]# mkdir /tmp/tcmalloc
[root@ipython nginx-1.6.0]# chmod 0777 /tmp/tcmalloc/
###这文件在附件里###
[root@ipython nginx-1.6.0]# cp ../nginx.conf /software/nginx/conf/
[root@ipython nginx-1.6.0]# cp ../fcgi.conf /software/nginx/conf/
[root@ipython nginx-1.6.0]# chmod 755 /etc/init.d/nginx
[root@ipython nginx-1.6.0]# mkdir /data/{logs,www.ipython.me}
[root@ipython nginx-1.6.0]# /software/nginx/sbin/nginx
[root@ipython nginx-1.6.0]# iptables -F
[root@ipython nginx-1.6.0]# iptables -A INPUT -p tcp --dport 22 -j ACCEPT
[root@ipython nginx-1.6.0]# iptables -A INPUT -p tcp --dport 80 -j ACCEPT
[root@ipython nginx-1.6.0]# ps aux|grep nginx
root     61291  0.0  0.0  31120   896 ?        Ss   15:36   0:00 nginx: master process /software/nginx/sbin/nginx -c /software/nginx/conf/nginx.conf
nginx    61293  0.0  0.1  31560  1612 ?        S    15:36   0:00 nginx: worker process

ncurses库(字符终端处理库)

[root@ipython lnmp]# tar jxf ncurses-5.9.tar.bz2 
[root@ipython lnmp]# cd ncurses-5.9
[root@ipython ncurses-5.9]# ./configure --prefix=/software/ncurses --with-shared --without-debug
[root@ipython ncurses-5.9]# make && make install

Mysql(数据库)

[root@ipython lnmp]# /usr/sbin/groupadd mysql
[root@ipython lnmp]# /usr/sbin/useradd -s /sbin/nologin -g mysql mysql
[root@ipython lnmp]# tar zxf mysql-5.5.6-rc.tar.gz 
[root@ipython lnmp]# cd mysql-5.5.6-rc
[root@ipython mysql-5.5.6-rc]# ./configure --prefix=/software/mysql/ --enable-assembler --with-extra-charsets=complex --enable-thread-safe-client --with-big-tables --with-readline --with-ssl --with-embedded-server --enable-local-infile --with-plugins=partition,innobase,myisammrg --with-named-curses-libs=/software/ncurses/lib/libncurses.so.5
[root@ipython mysql-5.5.6-rc]# make && make install
[root@ipython mysql-5.5.6-rc]# mkdir /data/mysql/{binlog,relaylog} -p
[root@ipython mysql-5.5.6-rc]# chown -R mysql:mysql /data/mysql
[root@ipython mysql-5.5.6-rc]# /software/mysql/bin/mysql_install_db --basedir=/software/mysql/ --datadir=/data/mysql/ --user=mysql
###这文件在附件里###
[root@ipython mysql-5.5.6-rc]# \cp ../my.cnf /etc/my.cnf
[root@ipython mysql-5.5.6-rc]# \cp ../mysqld /etc/init.d/mysqld
[root@ipython mysql-5.5.6-rc]# chmod 755 /etc/init.d/mysqld 
[root@ipython mysql-5.5.6-rc]# systemctl enable mysqld
[root@ipython mysql-5.5.6-rc]# systemctl start mysqld [root@ipython mysql-5.5.6-rc]# ps aux | grep mysqld
root     55475  0.1  0.1 115348  1696 ?        S    16:07   0:00 /bin/sh /software/mysql/bin/mysqld_safe --datadir=/data/mysql --pid-file=/data/mysql/mysql.pid
mysql    56342  2.7 11.9 1918248 120680 ?      Sl   16:07   0:01 /software/mysql/libexec/mysqld --basedir=/software/mysql --datadir=/data/mysql --plugin-dir=/software/mysql/lib/mysql/plugin --user=mysql --log-error=/data/mysql/mysql_error.log --open-files-limit=10240 --pid-file=/data/mysql/mysql.pid --socket=/tmp/mysql.sock --port=3306

libiconv库(字符编码转换)

[root@ipython lnmp]# tar zxf libiconv-1.14.tar.gz
###打补丁吧,避免手动修改隐患逻辑错误###
[root@ipython lnmp]# gzip -d libiconv-glibc-2.16.patch.gz  
[root@ipython lnmp]# cd libiconv-1.14/srclib
[root@ipython srclib]# patch -p1 < ../../libiconv-glibc-2.16.patch 
patching file stdio.in.h
[root@ipython libiconv-1.14]# cd ..
[root@ipython libiconv-1.14]# ./configure --prefix=/software/sharelib/
[root@ipython libiconv-1.14]# make && make install

libxml库(XML库)

[root@ipython lnmp]# tar jxf libxml2-2.8.0.tar.bz2 
[root@ipython lnmp]# cd libxml2-2.8.0
[root@ipython libxml2-2.8.0]# ./configure --prefix=/software/sharelib
[root@ipython libxml2-2.8.0]# make && make install

libpng库(图片库)

[root@ipython lnmp]# tar jxf libpng-1.6.8.tar.bz2 
[root@ipython lnmp]# cd libpng-1.6.8
[root@ipython libpng-1.6.8]# LDFLAGS="-L/software/sharelib/lib/" CPPFLAGS="-I/software/sharelib/include" ./configure --prefix=/software/sharelib
[root@ipython libpng-1.6.8]# make && make install

jpeg库(图片库)

[root@ipython lnmp]# tar jxf jpegsrc.v9a.tar.bz2
[root@ipython lnmp]# cd jpeg-9a/ 
[root@ipython jpeg-9a]# ./configure --prefix=/software/sharelib/
[root@ipython jpeg-9a]# make && make install

freetype(字库)

[root@ipython lnmp]# tar jxf freetype-2.5.2.tar.bz2 
[root@ipython lnmp]# cd freetype-2.5.2
[root@ipython freetype-2.5.2]# LIBPNG_CFLAGS="-I/software/sharelib/include/" LIBPNG_LDFLAGS="-L/software/sharelib/lib/" ./configure --prefix=/software/sharelib
[root@ipython freetype-2.5.2]# make && make install
[root@ipython freetype-2.5.2]# ln -s /software/sharelib/include/freetype2 /software/sharelib/include/freetype2/freetype

libmcrypt库(加密算法)

[root@ipython lnmp]# tar jxf libmcrypt-2.5.8.tar.bz2 
[root@ipython lnmp]# cd libmcrypt-2.5.8
[root@ipython libmcrypt-2.5.8]# ./configure --prefix=/software/sharelib
[root@ipython libmcrypt-2.5.8]# make && make install

mhash库(加密)

[root@ipython lnmp]# tar jxf mhash-0.9.9.9.tar.bz2
[root@ipython lnmp]# cd mhash-0.9.9.9
[root@ipython mhash-0.9.9.9]# ./configure --prefix=/software/sharelib/
[root@ipython mhash-0.9.9.9]# make && make install

curl库(URL传输)

[root@ipython lnmp]# tar jxf curl-7.36.0.tar.bz2
[root@ipython lnmp]# cd curl-7.36.0
[root@ipython curl-7.36.0]# ./configure --prefix=/software/curl
[root@ipython curl-7.36.0]# make && make install

gd库(绘图)

[root@ipython lnmp]# tar zxf gd-2.0.35.tar.gz 
[root@ipython lnmp]# cd gd-2.0.35
[root@ipython gd-2.0.35]# LDFLAGS="-L/software/sharelib/lib" CPPFLAGS="-I/software/sharelib/include" ./configure --prefix=/software/sharelib --enable-shared --with-png=/software/sharelib --with-freetype=/software/sharelib --with-libiconv-prefix=/software/sharelib --with-jpeg=/software/sharelib
[root@ipython gd-2.0.35]# make && make install

libtool(库编译支持)

[root@ipython lnmp]# tar zxf libtool-2.4.2.tar.gz 
[root@ipython lnmp]# cd libtool-2.4.2
[root@ipython libtool-2.4.2]# ./configure --prefix=/software/sharelib/ --enable-ltdl-install
[root@ipython libtool-2.4.2]# make && make install

将mysql的库文件加入动态共享

[root@ipython lnmp]# echo "/software/mysql/lib/mysql/" >> /etc/ld.so.conf && ldconfig

PHP(一种语言吧)

[root@ipython lnmp]# tar zxf php-5.3.5.tar.gz 
[root@ipython lnmp]# cd php-5.3.5
[root@ipython php-5.3.5]# sed -i s"#mysql/psi/psi.h#/software/mysql/include/mysql/psi/psi.h#" /software/mysql/include/mysql/my_sys.h
[root@ipython php-5.3.5]# sed -i s"#mysql/plugin.h#/software/mysql/include/mysql/plugin.h#" /software/mysql/include/mysql/m_string.h
[root@ipython php-5.3.5]# sed -i s"#mysql/services.h#/software/mysql/include/mysql/services.h#" /software/mysql/include/mysql/plugin.h
[root@ipython php-5.3.5]# sed -i s"#mysql/service_my_snprintf.h#/software/mysql/include/mysql/service_my_snprintf.h#" /software/mysql/include/mysql/services.h
[root@ipython php-5.3.5]# sed -i s"#mysql/service_thd_alloc.h#/software/mysql/include/mysql/service_thd_alloc.h#" /software/mysql/include/mysql/services.h
[root@ipython php-5.3.5]# ./configure --prefix=/software/php --with-config-file-path=/software/php/etc --with-mysql=/software/mysql --with-mysqli=/software/mysql/bin/mysql_config --with-iconv-dir=/software/sharelib --disable-ipv6 --with-freetype-dir=/software/sharelib/ --with-jpeg-dir=/software/sharelib/ --with-png-dir=/software/sharelib/ --with-zlib=/software/sharelib/ --with-libxml-dir=/software/sharelib/ --disable-rpath --enable-bcmath --enable-safe-mode --enable-shmop --enable-sysvsem --with-curl=/software/curl/ --enable-fpm --enable-mbstring  --with-mcrypt=/software/sharelib/ --with-gd=/software/sharelib/ --enable-gd-native-ttf --with-openssl=/software/openssl --with-mhash --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --enable-inline-optimization --with-curlwrappers --enable-mbregex --with-gettext
[root@ipython php-5.3.5]# make install ##创建PHP-FPM配置文件,参数什么的自己根据配置调整##
[root@ipython php-5.3.5]# cat >> /software/php/etc/php-fpm.conf <

好了...看图

CentOS7 编译安装LNMP的更多相关文章

  1. Centos7编译安装lnmp(nginx1.10 php7.0.2)

    我使用的是阿里云的服务器 Centos7 64位的版本 1. 连接服务器 这个是Xshell5的版本 安装好之后我们开始连接服务器 2. 安装nginx 首先安装nginx的依赖 yum instal ...

  2. centos7编译安装LNMP(nginx-1.16.0,mysql8.0.16,php-7.3.6)常见问题报错及解决方法

    LNMP的安装与配置 nginx-1.16.0安装及配置: 第一步:前往官网下载nignx源码包 下载完毕后上传至服务器(先安装lrzsz) yum -y install lrzsz 安装完毕后执行: ...

  3. centos7编译安装lnmp

    1.前言 本文适合于已经对Linux操作系统具有基本操作经验,并且能够在Linux或Windows上通过一键搭建工具或者yum命令行进行环境搭建的读者,阅读本文需具有一定的专业知识,本文不建议初学者阅 ...

  4. centos7 编译安装新版LNMP环境

    centos7 编译安装新版LNMP环境 环境版本如下: 1.系统环境:Centos 7 x86_64 2.NGINX:nginx-1.11.3.tar.gz 3.数据库:mariadb-10.0.2 ...

  5. CentOS7编译安装Nginx-1.8.1和编译参数

    CentOS7编译安装Nginx-1.8.1和编译参数 Web服务器Nginx    LNMP是一组众所周知的Web网站服务器架构环境,即由Linux+Nginx+MySQL+PHP(MySQL有时也 ...

  6. centos下编译安装lnmp

    centos下编译安装lnmp 本文以centos为背景在其中编译安装nginx搭建lnmp环境. 编译安装nginx时,需要事先安装 开发包组"Development Tools" ...

  7. 在树莓派1B上编译安装lnmp服务器

    最近一周给部门内部搭建考试系统,选择使用PHPEMS.这是个开源的系统,唯一缺点是PHP的版本比较低,只能使用5.2或5.3.而我的树莓派系统更新后使用apt-get安装得到的PHP版本为5.4.由于 ...

  8. centos7编译安装MySQL5.7.9

    title: centos7编译安装MySQL5.7.9 date: 2016-05-12 16:20:17 tags: --- Centos7编译安装mysql5.7.9 mysql5.7有更好的性 ...

  9. CentOS编译安装LNMP环境

    这里是教大家如何在centos下利用源码编译安装LNMP环境. 工具/原料 centos服务器一台 自用电脑一台 准备篇 配置好IP.DNS .网关,确保使用远程连接工具能够连接服务器 配置防火墙,开 ...

随机推荐

  1. Eclipse背景和匹配出现单词的一些设置

    Eclipse的背景色和关键词的设置这里就不多说了,只说明设置路径: 背景色:[Window]--->[Preference]-->[General]--->[Editors]--- ...

  2. 【ASP.NET Web API教程】5.5 ASP.NET Web API中的HTTP Cookie

    原文:[ASP.NET Web API教程]5.5 ASP.NET Web API中的HTTP Cookie 5.5 HTTP Cookies in ASP.NET Web API 5.5 ASP.N ...

  3. IDL 自己定义功能

    function add,x,y return, x+y end pro sum x=1 y=2 print,add(x,y) end 版权声明:本文博客原创文章,博客,未经同意,不得转载.

  4. 用Python实现QQ找茬游戏外挂工具

    源地址:http://cpiz.net/blog/2012/03/a_qq_zhaocha_assistant_by_python/ (原创作品,转载请注明出处)好久没写技术相关的博文,这次写篇有意思 ...

  5. vs2008编译QT开源项目--太阳神三国杀源码分析(三) 皮肤

    太阳神三国杀的界面很绚丽,界面上按钮的图标,鼠标移入移出时图标的变化,日志和聊天Widget的边框和半透明等效果,既可以通过代码来控制,也可以使用皮肤文件qss进行控制.下面我们分析一下三国杀的qss ...

  6. KMP 知识点总结

    KMP算法是BF算法的改进,主要是消除了主串指针的回溯,提高算法效率. 先简单介绍一下BF算法: 基本思路: 从目标串s的第一个字符开始和模式串的第一个字符比较,相等逐个比较后续字符,否则从目标串的第 ...

  7. Ray Through Glasses

    http://acm.hust.edu.cn/vjudge/contest/view.action?cid=30506#problem/T 题意:给你一束光,问你在一个三层的平面类传递n次的种数: 仔 ...

  8. How to write simple HTTP proxy with Boost.Asio

    How to write simple HTTP proxy with Boost.Asio How to write simple HTTP proxy with Boost.Asio Russia ...

  9. Xcode免证书真机调试,解决cannot read entitlement data问题

    本文是根据某个帖子写的(帖子链接在最后放出),但是在配置的过程中,遇到了一个纠结的问题,这个问题折腾了我N久,一直没搞明白到底是什么原因,问题如下: 按照原帖上写的每一步去做了,但是在最后编译的时候出 ...

  10. POJ2584 T-Shirt Gumbo【二分图多重匹配】

    题目链接: id=2584">http://poj.org/problem?id=2584 题目大意: 如今有5种型号(S.M.L.X.T)的衣服要发放给N个參赛队员.给出每一个參赛者 ...