CentOS6.6搭建LNMP环境

1、设置yum源,本地安装依赖包

1
  1. yum -y install gcc gcc-c++ automake autoconf libtool make

2、下载依赖包

1
2
3
4
  1. wget http://www.openssl.org/source/openssl-1.0.2-latest.tar.gz
  2. wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.34.tar.bz2
  3. wget http://www.zlib.net/zlib-1.2.8.tar.bz2
  4. wget http://nginx.org/download/nginx-1.8.0.tar.gz

3、安装pcre8.34

1
2
3
4
  1. tar zxvf pcre-8.34.tar.gz
  2. mkdir /usr/local/pcre8.34
  3. ./configure --prefix=/usr/local/pcre/
  4. make && make intall

4、安装zlib1.2.8

1
2
3
4
5
6
7
  1. cd /usr/local/src
  2. wget http://zlib.net/zlib-1.2.8.tar.gztar -zxvf zlib-1.2.8.tar.gz
  3. mkdir /usr/local/zlib
  4. cd zlib-1.2.8
  5. ./configure --prefix=/usr/local/zlib/
  6. make
  7. make install

5、安装openssl

1
2
3
4
5
6
7
  1. cd /usr/local/src
  2. wget http://www.openssl.org/source/openssl-1.0.2-latest.tar.gz
  3. cd openssl-1-1.0.2-lastest
  4. mkdir /usr/local/openssl
  5. ./config --prefix=/usr/local/openssl
  6. make
  7. make install

6、安装防盗链模块

1
2
3
4
5
6
7
8
  1. tar zxvf nginx-accesskey-2.0.3.tar.gz
  2. cd nginx-accesskey-2.0.3/
  3. 解压此文件后,找到nginx-accesskey-2.0.3下的config文件。
  4. 编辑此文件:替换其中的"$HTTP_ACCESSKEY_MODULE"为"ngx_http_accesskey_module"
  5. vi config
  6. 修改结果如下:
  7. #HTTP_MODULES="$HTTP_MODULES $HTTP_ACCESSKEY_MODULE"
  8. HTTP_MODULES="$HTTP_MODULES ngx_http_accesskey_module"

7、安装nginx1.8.0,–with-***设置的是模块源码包的路径

1
2
3
4
5
6
7
8
9
10
  1. ./configure --sbin-path=/usr/local/nginx/nginx \
  2. --conf-path=/usr/local/nginx/nginx.conf \
  3. --pid-path=/usr/local/nginx/nginx.pid \
  4. --with-http_ssl_module \
  5. --with-pcre=/usr/local/src/pcre \
  6. --with-zlib=/usr/local/src/zlib \
  7. --with-openssl=/usr/local/src/openssl \
  8. --add-module=/usr/local/src/nginx-accesskey-2.0.3/
  9. make
  10. make  install

8、安装完成启动nginx

1
  1. /usr/local/nginx/nginx

查看端口确认是否启动成功

1
  1. netstat -tunpl | grep 80

访问服务器,看到如下效果:
Welcome to nginx!
If you see this page, the nginx web server is successfully installed and working. Further configuration is required.
For online documentation and support please refer to nginx.org.
Commercial support is available at nginx.com.
Thank you for using nginx.

如果不能访问,检测防火墙80端口是否开启,编辑防火墙配置文件 vi /etc/sysconfig/iptables :

1
2
  1. -A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
  2. -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

9、安装PHP5.5.21
先安装依赖包:

1
  1. yum -y install gcc gcc-c++ automake autoconf libtool make glibc  libmcrypt-devel mhash-devel libxslt-devel 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

如下的四个包没有安装
No package libmcrypt-devel available.
No package mhash-devel available.
No package krb5 available.

没有装的三个软件通过源码包的方式编译安装

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
  1. tar zvxf php-5.5.21.tar.gz
  2. cd php-5.5.21
  3. ./configure \
  4. --prefix=/usr/local/php \
  5. --with-config-file-path=/usr/local/php/etc \
  6. --enable-fpm \
  7. --with-mcrypt=/usr/local/libmcrypt \
  8. --enable-mbstring \
  9. --enable-pdo \
  10. --with-curl \
  11. --disable-debug  \
  12. --disable-rpath \
  13. --enable-inline-optimization \
  14. --with-bz2  \
  15. --with-zlib \
  16. --enable-sockets \
  17. --enable-sysvsem \
  18. --enable-sysvshm \
  19. --enable-pcntl \
  20. --enable-mbregex \
  21. --with-mhash=/usr/local/mhash \
  22. --enable-zip \
  23. --with-pcre-regex \
  24. --with-mysql \
  25. --with-mysqli \
  26. --with-gd \
  27. --with-jpeg-dir
  28. make && make install

修改nginx配置文件,让nginx支持php请求,在nginx.conf的server段中添加如下代码

1
2
3
4
5
6
7
  1. location ~ \.php$ {
  2. root           html;
  3. fastcgi_pass   127.0.0.1:9000;
  4. fastcgi_index  index.php;
  5. fastcgi_param  SCRIPT_FILENAME  $document_root/$fastcgi_script_name;
  6. include        fastcgi_params;
  7. }

复制PHP的配置文件

1
2
  1. cd  /usr/local/src/php-5.5.21
  2. cp ./php.ini-development /usr/local/php/etc/php.ini

设置Php-fpm配置文件

1
2
  1. cd  /usr/local/php/etc/
  2. cp  php-fpm.conf.default php-fpm.conf

启动php管理程序php-fpm

1
  1. /usr/local/php/sbin/php-fpm

关闭 php-fpm

1
  1. Killall php-fpm

启动nginx,访问如下页面
启动:

1
  1. /usr/local/nginx/nginx

重新加载配置文件

1
  1. /usr/local/nginx/nginx –s reload

10、给PHP编译扩展(zendopcache和memcache)
php编译zendopcache缓存扩展(目前PHP的缓存插件一般有三个:APC、eAccelerator、XCache)
编译安装PHP5.5的时候加上

1
  1. --enable-opcache

提示错误。需要单独安装,依次执行下面的命令

1
2
3
4
  1. wget http://pecl.php.net/get/zendopcache-7.0.2.tgz
  2. tar xzf zendopcache-7.0.2.tgz
  3. cd zendopcache-7.0.2
  4. /usr/local/php/bin/phpize

如果找不到phpize的话,自己查看本地的PHP路径,下面也要按你的php.ini路径自行修改

1
2
3
  1. ./configure --with-php-config=/usr/local/php/bin/php-config
  2. make
  3. make install

如果显示:
Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-20121212/ 表示安装完成,下面要修改php的配置文件让它生效,在 php.ini 的最后面加入下面几行

1
2
3
4
5
6
7
  1. zend_extension=/usr/local/php/lib/php/extensions/no-debug-non-zts-20121212/opcache.so
  2. opcache.memory_consumption=128
  3. opcache.interned_strings_buffer=8
  4. opcache.max_accelerated_files=4000
  5. opcache.revalidate_freq=60
  6. opcache.fast_shutdown=1
  7. opcache.enable_cli=1

重启php-fpm
Phpinfo()查看的结果如下,扩展安装完成
This program makes use of the Zend Scripting Language Engine:
Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies
with Zend OPcache v7.0.2, Copyright (c) 1999-2013, by Zend Technologies

//给php编译安装memcache扩展
下载memcache-3.0.8.tgz解压:

1
2
3
4
5
  1. tar zxvf memcache-3.0.8.tgz
  2. cd memcache-3.0.8
  3. /usr/local/php/bin/phpize
  4. ./configure --enable-memcache --with-php-config=/usr/local/php/bin/php-config --with-zlib-dir
  5. make && make install

成功后提示:
Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-20121212/
将扩展添加到php配置文件

1
  1. extension=/usr/local/php/lib/php/extensions/no-debug-non-zts-20121212/memcache.so

重启php-fpm

1
2
  1. killall php-fpm
  2. /usr/local/php/sbin/php-fpm

10、安装MYSQL5.6
安装依赖包bison:

1
  1. Yum install bison

安装cmake
cmake下载地址:http://www.cmake.org/

1
2
3
4
5
  1. tar zxvf cmake-2.8.5.tar.gz
  2. cd cmake-2.8.5
  3. ./bootstrap
  4. make
  5. make install

安装ncurses
ncurses下载地址:http://www.gnu.org/software/ncurses/

1
2
3
4
5
  1. tar zxvf ncurses-5.8.tar.gz
  2. cd ncurses-5.8
  3. ./configure
  4. make
  5. make install

11.开始安装MySQL
MySQL5.6下载地址:http://dev.mysql.com/
这里我在这里下载的mysql-5.6.12.tar.gz
ftp://mirror.switch.ch/mirror/mysql/Downloads/MySQL-5.6/
准备工作

1
2
  1. groupadd mysql
  2. useradd mysql -g mysql -M -s /sbin/nologin

增加一个名为 mysql的用户。
-g:指定新用户所属的用户组(group)
-M:不建立根目录
-s:定义其使用的shell,/sbin/nologin代表用户不能登录系统。

解压并安装MySQL

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
  1. tar zxvf mysql-5.6.12.tar.gz
  2. cd mysql-5.6.12
  3. mkdir /usr/local/mysql5.6
  4. cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql5.6 \
  5. -DMYSQL_DATADIR=/usr/local/mysql5.6/data  \
  6. -DSYSCONFDIR=/etc   \
  7. -DWITH_MYISAM_STORAGE_ENGINE=1  \
  8. -DWITH_INNOBASE_STORAGE_ENGINE=1   \
  9. -DWITH_READLINE=1   \
  10. -DMYSQL_UNIX_ADDR=/tmp/mysqld.sock   \
  11. -DMYSQL_TCP_PORT=3306   \
  12. -DENABLED_LOCAL_INFILE=1   \
  13. -DWITH_PARTITION_STORAGE_ENGINE=1  \
  14. -DEXTRA_CHARSETS=all   \
  15. -DDEFAULT_CHARSET=utf8   \
  16. -DDEFAULT_COLLATION=utf8_general_ci
  17. make
  18. make install

设置MYSQL权限

1
2
3
4
5
6
  1. cd /usr/local/mysql
  2. chown -R mysql:mysql ./*
  3. /usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data &
  4. chown -R root:mysql ./*
  5. chown -R mysql:mysql ./data
  6. chmod -R ug+rwx  ./*

将mysql的配置文件拷贝到/etc

1
  1. cp support-files/my-default.cnf  /etc/my.cnf

修改my.cnf配置

1
  1. vi /etc/my.cnf

[mysqld] 下面添加:

1
2
3
  1. user=mysql
  2. datadir=/data/mysql
  3. default-storage-engine=innodb

8.启动mysql

1
  1. bin/mysqld_safe --user=mysql &

检查启动是否成功

1
  1. ps –ef|grep mysql

检查端口

1
  1. netstat -tnl|grep 3306

将mysql的启动服务添加到系统服务中

1
2
3
4
5
6
7
  1. cp support-files/mysql.server  /etc/init.d/mysqld
  2. cd /etc/init.d/
  3. chmod a+x mysqld
  4. chkconfig --add mysqld
  5. chkconfig --level 35 mysqld on
  6. chkconfig --level 24 mysqld off
  7. chkconfig --list | grep mysqld

现在可以使用下面的命令启动mysqld

1
  1. service mysqld  start

停止mysqld服务

1
  1. service mysqld stop

重启mysqld服务

1
  1. service mysqld restart

最后的任务登陆mysql数据库服务器设置密码

CentOS6.6搭建LNMP环境的更多相关文章

  1. CentOS6.7搭建LNMP环境

    1:查看环境: [root@localhost ~]# cat /etc/redhat-release 2:关掉防火墙 #重启后生效开启 [root@localhost ~]# chkconfig i ...

  2. centos6.5搭建lnmp环境

    注:本文原文链接:http://www.cnblogs.com/xiaoit/p/3991037.html 本文只是做保存使用 1:查看环境: [root@10-4-14-168 html]# cat ...

  3. Centos6.x搭建lnmp环境

    查看系统版本 #cat /etc/redhat-release CentOS release 6.7 (Final) 配置静态ip #vi /etc/sysconfig/network-scripts ...

  4. CentOS6.8搭建LNMP环境

    selinux可能会致使编译安装失败,我们先禁用它.永久禁用,需要重启生效 sed -i ‘s/SELINUX=enforcing/SELINUX=disabled/g’ /etc/selinux/c ...

  5. Docker之使用Docker-compose搭建LNMP环境

    之前有随笔介绍使用Docker-compose搭建LNMP环境(centos6 php5.6) https://www.cnblogs.com/minseo/p/10146982.html 本文介绍D ...

  6. Yum搭建LNMP环境(动、静、库分离)(week4_day5)--技术流ken

    前言 本篇博客使用yum来搭建lnmp环境,将采用动态,静态以及数据库分开安装的方式即nginx,php,mysql.会被分开安装在不同的服务器之上,搭建出来一套lnmp环境,并部署wordpress ...

  7. [Linux] deepin15.8搭建LNMP环境

    LAMP和LNMP LAMP==Linux+Apache+Mysql+PHP LNMP==Linux+Nginx+Mysql+PHP 安装nginx sudo apt install nginx 安装 ...

  8. CentOS 7 源码搭建LNMP环境

    搭建 LNMP 环境 源码包版本 :  CentOS Linux  7 nginx-1.15.1.tar.gz  mysql-boost-5.7.21.tar.gz  php-7.2.7.tar.gz ...

  9. Vmware搭建LNMP环境(Centos7+Nginx+Mysql+PHP7.1.8)

    参考:1.Linux学习之CentOS(一)----在VMware虚拟机中安装CentOS 7(图文教程) 2.Centos7搭建LNMP环境 3.MySQL5.7修改默认root密码 4.CentO ...

随机推荐

  1. python抓取网页中图片并保存到本地

    #-*-coding:utf-8-*- import os import uuid import urllib2 import cookielib '''获取文件后缀名''' def get_file ...

  2. android apk 防止反编译技术第四篇-对抗JD-GUI

    又到周末一个人侘在家里无事可干,这就是程序员的悲哀啊.好了我们利用周末的时间继续介绍android apk防止反编译技术的另一种方法.前三篇我们讲了加壳技术(http://my.oschina.net ...

  3. [转]js函数式变成之函数柯里化

    本文转自:https://segmentfault.com/a/1190000003733107 函数柯里化是指参数逐渐求值的过程. 我觉得它是:降低通用性,提高专用性. 通常,柯里化是这样的过程,“ ...

  4. Remove Duplicates From Sorted Array

    Remove Duplicates from Sorted Array LeetCode OJ Given a sorted array, remove the duplicates in place ...

  5. 第26章 创建型模式大PK

    26.1 工厂方法模式 VS 建造者模式 26.1.1 按工厂方法建造超人 (1)产品:两类超人,成年超人和未成年超人. (2)工厂:这里选择简单工厂 [编程实验]工厂方法建造超人 //创建型模式大P ...

  6. Unity arm64

    ERROR ITMS-90086 ERROR ITMS-90086:"missing 64-bit support. beginning on february 1, 2015, new i ...

  7. cookie 和 session 的基础知识

    cookie 和 session 的基础知识 cookie 和session 的区别详解 这些都是基础知识,不过有必要做深入了解.先简单介绍一下. 二者的定义: 当你在浏览网站的时候,WEB 服务器会 ...

  8. C#手工注入辅助工具

    看了某牛出版的MySql手注天书一神书,基本上解决了SQL注入上的知识点,于是打完(酱油)省赛回来通宵了一晚上写了个工具 方便语句构造SQL 联合查询 报错注入 盲注 读写 命令执行 基本都有整合 遇 ...

  9. memcache 的内存管理介绍和 php实现memcache一致性哈希分布式算法

    1 网络IO模型 安装memcached需要先安装libevent Memcached是多线程,非阻塞IO复用的网络模型,分为监听主线程和worker子线程,监听线程监听网络连接,接受请求后,将连接描 ...

  10. expect结合ssh遍历线上机器

    有个需求,有个文件删除了,但是不确定线上机器还都存不存在 #!/home/work/.jumbo/bin/expect -f set timeout - set mac [lindex $argv ] ...