设为首页 收藏本站
查看: 1069|回复: 0

CentOS7 编译安装LNMP

[复制链接]

尚未签到

发表于 2015-8-21 09:41:12 | 显示全部楼层 |阅读模式
  (文章来自:http://www.iyunv.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源配置(其实没什么改动)

[iyunv@ipython ~]# cat /etc/yum.repos.d/1.repo
[1]
name=1
baseurl=file:///media
enabled=1
gpgcheck=0
[iyunv@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
  编译工具安装

[iyunv@ipython ~]# yum install gcc-c++ automake autoconf bzip2
  zlib库(提供数据压缩用的函式库):

[iyunv@ipython lnmp]# tar zxf zlib-1.2.8.tar.gz
[iyunv@ipython lnmp]# cd zlib-1.2.8
[iyunv@ipython zlib-1.2.8]# ./configure --prefix=/software/sharelib
[iyunv@ipython zlib-1.2.8]# make && make install
  pcre库(rewrite的支持)

[iyunv@ipython lnmp]# tar zxf pcre-8.35.tar.gz
[iyunv@ipython lnmp]# cd pcre-8.35
[iyunv@ipython pcre-8.35]# ./configure --prefix=/software/pcre --enable-utf8 --enable-unicode-properties
[iyunv@ipython pcre-8.35]# make && make install
  OpenSSL库(https的支持)

[iyunv@ipython lnmp]# tar zxf openssl-1.0.1h.tar.gz
[iyunv@ipython lnmp]# cd openssl-1.0.1h
[iyunv@ipython openssl-1.0.1h]# ./config --prefix=/software/openssl
[iyunv@ipython openssl-1.0.1h]# make && make install
  TCMalloc工具(google内存管理套件)

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

[iyunv@ipython lnmp]# groupadd -g 1500 nginx
[iyunv@ipython lnmp]# useradd -M -u 1500 -g nginx -s /sbin/nologin nginx
[iyunv@ipython lnmp]# mkdir /var/tmp/nginx
[iyunv@ipython lnmp]# chown nginx:nginx /var/tmp/nginx/
[iyunv@ipython lnmp]# tar zxf nginx-1.6.0.tar.gz
[iyunv@ipython lnmp]# cd nginx-1.6.0
[iyunv@ipython nginx-1.6.0]# sed -i 's/CFLAGS="$CFLAGS -g"/#CFLAGS="$CFLAGS -g"/' auto/cc/gcc
[iyunv@ipython nginx-1.6.0]# sed -i "s#/usr/local#/software/google-perftools#" auto/lib/google-perftools/conf
##配置参数有点长##
[iyunv@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
[iyunv@ipython nginx-1.6.0]# make && make install
[iyunv@ipython nginx-1.6.0]# mkdir /tmp/tcmalloc
[iyunv@ipython nginx-1.6.0]# chmod 0777 /tmp/tcmalloc/
###这文件在附件里###
[iyunv@ipython nginx-1.6.0]# cp ../nginx.conf /software/nginx/conf/
[iyunv@ipython nginx-1.6.0]# cp ../fcgi.conf /software/nginx/conf/
[iyunv@ipython nginx-1.6.0]# chmod 755 /etc/init.d/nginx
[iyunv@ipython nginx-1.6.0]# mkdir /data/{logs,www.ipython.me}
[iyunv@ipython nginx-1.6.0]# /software/nginx/sbin/nginx
[iyunv@ipython nginx-1.6.0]# iptables -F
[iyunv@ipython nginx-1.6.0]# iptables -A INPUT -p tcp --dport 22 -j ACCEPT
[iyunv@ipython nginx-1.6.0]# iptables -A INPUT -p tcp --dport 80 -j ACCEPT
[iyunv@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库(字符终端处理库)

[iyunv@ipython lnmp]# tar jxf ncurses-5.9.tar.bz2
[iyunv@ipython lnmp]# cd ncurses-5.9
[iyunv@ipython ncurses-5.9]# ./configure --prefix=/software/ncurses --with-shared --without-debug
[iyunv@ipython ncurses-5.9]# make && make install
  Mysql(数据库)

[iyunv@ipython lnmp]# /usr/sbin/groupadd mysql
[iyunv@ipython lnmp]# /usr/sbin/useradd -s /sbin/nologin -g mysql mysql
[iyunv@ipython lnmp]# tar zxf mysql-5.5.6-rc.tar.gz
[iyunv@ipython lnmp]# cd mysql-5.5.6-rc
[iyunv@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
[iyunv@ipython mysql-5.5.6-rc]# make && make install
[iyunv@ipython mysql-5.5.6-rc]# mkdir /data/mysql/{binlog,relaylog} -p
[iyunv@ipython mysql-5.5.6-rc]# chown -R mysql:mysql /data/mysql
[iyunv@ipython mysql-5.5.6-rc]# /software/mysql/bin/mysql_install_db --basedir=/software/mysql/ --datadir=/data/mysql/ --user=mysql
###这文件在附件里###
[iyunv@ipython mysql-5.5.6-rc]# \cp ../my.cnf /etc/my.cnf
[iyunv@ipython mysql-5.5.6-rc]# \cp ../mysqld /etc/init.d/mysqld
[iyunv@ipython mysql-5.5.6-rc]# chmod 755 /etc/init.d/mysqld
[iyunv@ipython mysql-5.5.6-rc]# systemctl enable mysqld
[iyunv@ipython mysql-5.5.6-rc]# systemctl start mysqld
[iyunv@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库(字符编码转换)

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

[iyunv@ipython lnmp]# tar jxf libxml2-2.8.0.tar.bz2
[iyunv@ipython lnmp]# cd libxml2-2.8.0
[iyunv@ipython libxml2-2.8.0]# ./configure --prefix=/software/sharelib
[iyunv@ipython libxml2-2.8.0]# make && make install
  libpng库(图片库)

[iyunv@ipython lnmp]# tar jxf libpng-1.6.8.tar.bz2
[iyunv@ipython lnmp]# cd libpng-1.6.8
[iyunv@ipython libpng-1.6.8]# LDFLAGS="-L/software/sharelib/lib/" CPPFLAGS="-I/software/sharelib/include" ./configure --prefix=/software/sharelib
[iyunv@ipython libpng-1.6.8]# make && make install
  jpeg库(图片库)

[iyunv@ipython lnmp]# tar jxf jpegsrc.v9a.tar.bz2
[iyunv@ipython lnmp]# cd jpeg-9a/
[iyunv@ipython jpeg-9a]# ./configure --prefix=/software/sharelib/
[iyunv@ipython jpeg-9a]# make && make install
  freetype(字库)

[iyunv@ipython lnmp]# tar jxf freetype-2.5.2.tar.bz2
[iyunv@ipython lnmp]# cd freetype-2.5.2
[iyunv@ipython freetype-2.5.2]# LIBPNG_CFLAGS="-I/software/sharelib/include/" LIBPNG_LDFLAGS="-L/software/sharelib/lib/" ./configure --prefix=/software/sharelib
[iyunv@ipython freetype-2.5.2]# make && make install
[iyunv@ipython freetype-2.5.2]# ln -s /software/sharelib/include/freetype2 /software/sharelib/include/freetype2/freetype
  libmcrypt库(加密算法)

[iyunv@ipython lnmp]# tar jxf libmcrypt-2.5.8.tar.bz2
[iyunv@ipython lnmp]# cd libmcrypt-2.5.8
[iyunv@ipython libmcrypt-2.5.8]# ./configure --prefix=/software/sharelib
[iyunv@ipython libmcrypt-2.5.8]# make && make install
  mhash库(加密)

[iyunv@ipython lnmp]# tar jxf mhash-0.9.9.9.tar.bz2
[iyunv@ipython lnmp]# cd mhash-0.9.9.9
[iyunv@ipython mhash-0.9.9.9]# ./configure --prefix=/software/sharelib/
[iyunv@ipython mhash-0.9.9.9]# make && make install
  curl库(URL传输)

[iyunv@ipython lnmp]# tar jxf curl-7.36.0.tar.bz2
[iyunv@ipython lnmp]# cd curl-7.36.0
[iyunv@ipython curl-7.36.0]# ./configure --prefix=/software/curl
[iyunv@ipython curl-7.36.0]# make && make install
  gd库(绘图)

[iyunv@ipython lnmp]# tar zxf gd-2.0.35.tar.gz
[iyunv@ipython lnmp]# cd gd-2.0.35
[iyunv@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
[iyunv@ipython gd-2.0.35]# make && make install
  libtool(库编译支持)

[iyunv@ipython lnmp]# tar zxf libtool-2.4.2.tar.gz
[iyunv@ipython lnmp]# cd libtool-2.4.2
[iyunv@ipython libtool-2.4.2]# ./configure --prefix=/software/sharelib/ --enable-ltdl-install
[iyunv@ipython libtool-2.4.2]# make && make install
  将mysql的库文件加入动态共享

[iyunv@ipython lnmp]# echo "/software/mysql/lib/mysql/" >> /etc/ld.so.conf && ldconfig
  PHP(一种语言吧)

[iyunv@ipython lnmp]# tar zxf php-5.3.5.tar.gz
[iyunv@ipython lnmp]# cd php-5.3.5
[iyunv@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
[iyunv@ipython php-5.3.5]# sed -i s"#mysql/plugin.h#/software/mysql/include/mysql/plugin.h#" /software/mysql/include/mysql/m_string.h
[iyunv@ipython php-5.3.5]# sed -i s"#mysql/services.h#/software/mysql/include/mysql/services.h#" /software/mysql/include/mysql/plugin.h
[iyunv@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
[iyunv@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
[iyunv@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
[iyunv@ipython php-5.3.5]# make install
##创建PHP-FPM配置文件,参数什么的自己根据配置调整##
[iyunv@ipython php-5.3.5]# cat >> /software/php/etc/php-fpm.conf <
  好了...看图
DSC0000.jpg

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-101966-1-1.html 上篇帖子: LNMP环境下压力测试时的主要调试参数 下篇帖子: lnmp启动脚本
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表