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. 浅谈 Linux 内核无线子系统

    浅谈 Linux 内核无线子系统 本文目录 1. 全局概览 2. 模块间接口 3. 数据路径与管理路径 4. 数据包是如何被发送? 5. 谈谈管理路径 6. 数据包又是如何被接收? 7. 总结一下 L ...

  2. [转]SQL Server 高性能写入的一些总结

    本文转自:http://www.cnblogs.com/rush/archive/2012/08/31/2666090.html 1.1.1 摘要 在开发过程中,我们不时会遇到系统性能瓶颈问题,而引起 ...

  3. Java面向对象:接口

    Java面向对象之接口 什么是接口:接口是一种规范和标准,他们可以约束类的行为,是一些方法特征的集合 语法: [修饰符] interface 接口名 extends 父接口1,夫接口2....... ...

  4. 嵌入式Linux驱动学习之路(十)字符设备驱动-my_led

    首先贴上代码: 字符设备驱动代码: /** *file name: led.c */#include <linux/sched.h> #include <linux/signal.h ...

  5. MySQL sql语言的笔记

    3 MySQL数据库 3.1 mysql数据存储结构 先数据库,再表,再有数据 4 数据库管理 4.1 查询所有数据库 mysql> show databases; +------------- ...

  6. codevs[1300]文件排版

    Description 写电子邮件是有趣的,但不幸的是经常写不好看,主要是因为所有的行不一样长,你的上司想要发排版精美的电子邮件,你的任务是为他编写一个电子邮件排版程序. 完成这个任务最简单的办法是在 ...

  7. History 对象

    History 对象 History 对象包含用户(在浏览器窗口中)访问过的 URL. History 对象是 window 对象的一部分,可通过 window.history 属性对其进行访问. 注 ...

  8. 创建Visual studio项目模板 vstemplate关键点纪要

    from:http://www.cnblogs.com/stickman/p/3454719.html 经过多次的实验,终于完美生成一个.VSIX的项目模板安装包,其中遇到不少问题与挫折,久经goog ...

  9. 1D1D动态规划优化初步

    再学习一下动态规划的基本优化方法- 首先这篇文章应该大家都看过吧-没看过的自行百度 关于实现的思路文章里都给好了-这篇就主要给一点题目啥的 (P.S. 电脑重装了,如果博客发出来有一些奇怪的问题不要在 ...

  10. Ubuntu终端命令行不显示颜色

    在网上找到的一个有效方案是在.bash_profile 中增加颜色定义 export LS_COLORS='di=01;35:ln=01;36:pi=40;33:so=01;35:do=01;35:b ...