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. eclipse设置显示代码行数(转)

    (转自:http://jingyan.baidu.com/article/b2c186c89b7023c46ef6ff27.html) 载入eclipse的主页面,默认以英文版的eclipse为例 点 ...

  2. C#语句

    C#控制语句 控制语句: goto语句 If语句 do while循环  for循环  while循环 switch语句 三元运算符   <test?><resultIfTrue&g ...

  3. Collider Collision 区别

    Collision 中带有碰撞的信息,例如:速度和撞击到的点 示例 void OnCollisionEnter2D(Collision2D coll) { foreach(ContactPoint c ...

  4. 在Flex4中嵌入字体

    如果要使用的字体不是系统字体,可以把字体嵌入到Flash中,然后引用该字体.不过字体文件一般都比较大,慎重使用该功能. 官方例子 http://help.adobe.com/en_US/flex/us ...

  5. [No00000A]计算机的存储单位

    位 bit (比特)(Binary Digits):存放一位二进制数,即 0 或 1,最小的存储单位. 字节 byte:8个二进制[bit (比特)(Binary Digits)]位为一个字节(B), ...

  6. Tomcat 开启 SSL

    生成keystore /usr/java/default/bin/keytool -genkey -alias tomcat -keyalg RSA -keystore ~/tomcat.keysto ...

  7. oracle编程总结

    1,SEQUENCE的使用 问题:在MSSQL中,我们可以通过设置自增长来作为主键,但是oracle里面没有这个 解决方案:使用SEQUENCE来实现,具体步骤如下 (1)首先建立一个序列(就是每次查 ...

  8. IE浏览器下ajax缓存导致数据不更新的解决方法

    摘自:http://www.iefans.net/ie-ajax-json-shuju-huancun/ 最近做设计的时候遇到一个小问题,当你用jquery的getjson函数从后台获取数据的时候,I ...

  9. Codevs 1051 二叉树最大宽度和高度

    1501 二叉树最大宽度和高度  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 白银 Silver       题目描述 Description 给出一个二叉树,输出它的最大宽 ...

  10. Native code on Windows Phone 8(转)

    Windows Phone 8 introduces the ability to use native code to implement Windows Phone. In this sectio ...