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. mybatis 插入数据时返回主键

    在使用MyBatis做持久层时,insert语句默认是不返回记录的主键值,而是返回插入的记录条数:显然,假如主键是你生成后插入的,自然你已经有主键了,显然不需要我们再去获得,所以我们这里处理的是当主键 ...

  2. 优化SQL查询:如何写出高性能SQL语句

    1. 首先要搞明白什么叫执行计划? 执行计划是数据库根据SQL语句和相关表的统计信息作出的一个查询方案,这个方案是由查询优化器自动分析产生的,比如一条SQL语句如果用来从一个 10万条记录的表中查1条 ...

  3. linux原始套接字(4)-构造IP_UDP

    一.概述                                                    同上一篇tcp一样,udp也是封装在ip报文里面.创建UDP的原始套接字如下: (soc ...

  4. 三:Go编程语言规范-表达式

    1.限定标识符 限定标识符为使用包名前缀限定的标识符.包名与标识符均不能为空白的.限定标识符用于访问另一个包中的标识符,它必须被导入. 标识符必须是已导出且在该包的包块中声明. math.Sin // ...

  5. OpenStack 企业私有云的若干需求(9): 云管理平台 CMP

    本系列会介绍OpenStack 企业私有云的几个需求: 自动扩展(Auto-scaling)支持 多租户和租户隔离 (multi-tenancy and tenancy isolation) 混合云( ...

  6. 涨知识Style

    1.用Access作为后台数据库支撑,书写一个C#写入记录的案例 示例1: using System.Data.OleDb; string sql = "insert into 表 (列1, ...

  7. NOIP2000单词接龙[DFS]

    题目描述 单词接龙是一个与我们经常玩的成语接龙相类似的游戏,现在我们已知一组单词,且给定一个开头的字母,要求出以这个字母开头的最长的“龙”(每个单词都最多在“龙”中出现两次),在两个单词相连时,其重合 ...

  8. NOIP水题合集[3/未完待续]

    NOIP2008pj传球游戏 题目描述 上体育课的时候,小蛮的老师经常带着同学们一起做游戏.这次,老师带着同学们一起做传球游戏. 游戏规则是这样的:n个同学站成一个圆圈,其中的一个同学手里拿着一个球, ...

  9. Flex4的可视化显示对象

    flex3中用addChild(child:DisplayObject) 增加显示对象,flex4中用addElement(element:IVisualElement).绝大多数的flex3显示控件 ...

  10. Eclipse C++开发环境配置(很简洁)

    from: https://www.zybuluo.com/ghostfn1/note/303921