上次中,记录了lamp的环境的搭建和安装,这一次说一下lnmp环境的安装和搭建,下面是详细的安装步骤:

一. 先是Mysql的安装步骤,其实和上次的一样:

  

): 编译安装MySQL
+-------------------------------------------------------------------------------+
| 操作 | 作用 |
+-------------------------------------------------------------------------------+
|shell> cd /usr/local/src | 进入软件包所在目录(不要照抄) |
|-------------------------------------------------------------------------------|
|shell> groupadd mysql | 增加mysql组(如果有就不用加了) |
|-------------------------------------------------------------------------------|
|shell> useradd mysql -g mysql | 增加mysql用户,并属于mysql组 |
|-------------------------------------------------------------------------------|
|shell> tar -xzvf mysql-5.1..tar.gz | 解压mysql源码包 |
|-------------------------------------------------------------------------------|
|shell> cd mysql-5.1. | 进入源码包 |
|-------------------------------------------------------------------------------|
|shell> ./configure --prefix=/usr/local/mysql \ | 配置mysql编译选项, |
| --with-charset=utf8 \ | 指定安装路径及支持的字符集 |
| --with-extra-charsets=gbk,gb2312,binary \
| |
|-------------------------------------------------------------------------------|
|shell> make | 编译 |
|-------------------------------------------------------------------------------|
|shell> make install | 安装 |
+-------------------------------------------------------------------------------+ ):配置并初始化MySQL
+---------------------------------------------------------------------------------------+
| 操作 | 作用 |
+---------------------------------------------------------------------------------------+
|shell> cp support-files/my-medium.cnf /etc/my.cnf | 把MySQL配置文件复制到/etc下 |
|---------------------------------------------------------------------------------------|
|shell> vi /etc/my.cnf 在'skip_federated'前加'#'号 | 注释掉这个错误的启动项,这是一个比较新式的存储引擎|
|---------------------------------------------------------------------------------------|
|shell> cd /usr/local/mysql | 进入mysql的安装目录 |
|---------------------------------------------------------------------------------------|
|shell> chown -R mysql.mysql . | 修改属主属组为mysql,才能完成 |
| | 下一步的初始化数据库工作 |
|---------------------------------------------------------------------------------------|
|shell> bin/mysql_install_db --user=mysql \ | 初始化数据数据库 |
| --datadir=/usr/local/mysql/var | |
|---------------------------------------------------------------------------------------|
|shell> chown -R root . | 把var目录修改为mysql用户所有 |
|shell> chown -R mysql var | 其他文件修改为root所有,保证安全|
|---------------------------------------------------------------------------------------|
|shell> bin/mysqld_safe --user=mysql & | 启动mysql |
+---------------------------------------------------------------------------------------+ ):测试数据库
+-------------------------------------------------+-------------------------------------+
| 操作 | 作用 |
+-------------------------------------------------+-------------------------------------+
|shell> bin/mysql -uroot | 以root用户连mysql,无密码 |
|---------------------------------------------------------------------------------------|
|mysql> show databases; | 显示数据库 |
|---------------------------------------------------------------------------------------|
| +--------------------+ | |
| | Database | | |
| +--------------------+ | 看到左面的信息,数据库就安装 |
| | information_schema | | 并启动成功了! |
| | mysql | | |
| | test | | |
| +--------------------+ | |
+---------------------------------------------------------------------------------------+ ):接上步,修改mysql密码(可不做此步,默认无密码)
+-------------------------------------------------------------------------------+
| 操作 | 作用 |
+-------------------------------------------------------------------------------+
|mysql>UPDATE user SET | |
| password=PASSWORD('new_password') | 修改root用户的密码 |
| WHERE user='root'; | |
|-------------------------------------------------------------------------------+
|mysql>flush privileges; | 清空权限缓存 |
+-------------------------------------------------------------------------------+

二.开始安装php

 apache一般是把php当做自己的一个模块来启动的.
而nginx则是把http请求变量(如get,user_agent等)转发给 php进程,即php独立进程,与nginx进行通信. 称为 fastcgi运行方式.
因此,为apache所编译的php,是不能用于nginx的.

 注意:需要将php-fpm的模块打进入到php的源码包中,具体的步骤如下:

 

编译安装PHP和PHP-FPM很简单,下面是安装过程:(最好安装php5.)
[root@localhost local]#tar zxvf php-5.2..tar.gz
[root@localhost local]#gzip -cd php-5.2.-fpm-0.5..diff.gz | patch -d php-5.2. -p1
[root@localhost local]#cd php-5.2.
[root@localhost php-5.2.]#./configure --prefix=/usr/local/php --enable-fastcgi --enable-fpm
[root@localhost php-5.2.]#make
[root@localhost php-5.2.]#make install
[root@localhost php-5.2.]cp php.ini-dist /usr/local/php/lib/php.ini 管理FastCGI进程
在配置完php-fpm后,就可以启动FastCGI进程了。启动fastcgi进程有两种方式:
/usr/local/php/bin/php-cgi --fpm
或者
/usr/local/php/sbin/php-fpm start 在“./configure”编译选项中,指定将PHP安装到/usr/local下,“--enable-fastcgi”是启用对PHP的FastCGI支持,“--enable-fpm”是激活对FastCGI模式的fpm支持。 注意:在此处并没有将Mysql编译进来,但是没有关系,这个后续也是可以导入进来的

三.安装nginx

  

nginx 的安装
下载地址: http://nginx.org/download/nginx-1.4.2.tar.gz
安装准备: nginx依赖于pcre库,要先安装pcre
yum install pcre pcre-devel
cd /usr/local/src/
wget http://nginx.org/download/nginx-1.4.2.tar.gz
tar zxvf nginx-1.4..tar.gz
cd nginx-1.4.
./configure --prefix=/usr/local/nginx
make && make install 启动:
cd /ulsr/local/nginx, 看到如下4个目录
./
....conf 配置文件
... html 网页文件
...logs 日志文件
...sbin 主要二进制程序 [root@localhost nginx]# ./sbin/nginx
nginx: [emerg] bind() to 0.0.0.0: failed (: Address already in use)
....
nginx: [emerg] bind() to 0.0.0.0: failed (: Address already in use)
nginx: [emerg] still could not bind() 不能绑定80端口,80端口已经被占用
(有时是自己装了apache,nginx等,还有更多情况是操作系统自带了apache并作为服务启动)
解决: 把占用80端口的软件或服务关闭即可.

总结一下nginx处理转发php的请求原理:

 nginx+php的配置比较简单,核心就一句话----
把请求的信息转发给9000端口的PHP进程,
让PHP进程处理 指定目录下的PHP文件. 如下例子:
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params; } :碰到php文件,
: 把根目录定位到 html,
: 把请求上下文转交给9000端口PHP进程,
: 并告诉PHP进程,当前的脚本是 $document_root$fastcgi_scriptname
(注:PHP会去找这个脚本并处理,所以脚本的位置要指对)

lnmp的环境的安装和搭建的更多相关文章

  1. less环境的安装与搭建

    less: Less 是一门 CSS 预处理语言,它扩充了 CSS 语言,增加了诸如变量.混合(mixin).函数等功能,让 CSS 更易维护.方便制作主题.扩充.Less 可以运行在 Node 或浏 ...

  2. CentOS7 LNMP+phpmyadmin环境搭建(三、安装phpmyadmin)

    之前我们已经安装了lnmp的环境,现在让我们来安装phpmyadmin. 跟前一样,yum默认的库里是没有phpmyadmin的,我们需要从epel库里进行安装,之前已经安装过epel的朋友就可以直接 ...

  3. CentOS7 LNMP+phpmyadmin环境搭建(一、虚拟机及centos7安装)

    前一阵子配公司的服务器的时候,发现网上好多教程杂乱无章,然后便根据网上已有资料自己整理了一个lnmp环境的安装教程.因为懒,已经好久没写过博客了.趁着这次公司招新人,把之前整理的文档又整理了一次,顺便 ...

  4. 图文详解如何快捷搭建LNMP服务环境

    上一篇与大家一起学习了下如何搭建LAMP环境的知识,今天小编再和大家分享下如何快捷地搭建LNMP环境,并搭建起一个网站.Nginx是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/S ...

  5. linux--->阿里云centos6.9环境配置安装lnmp

    阿里云centos6.9环境配置安装lnmp mysql安装 本人博客:http://www.cnblogs.com/frankltf/p/8615418.html PHP安装 1.安装依赖关系 yu ...

  6. 我的第一个phonegap开发WebApp的demo 怎么搭建安卓开发环境以及安装phonegap

    一.先来张图,赏心悦目观赏一下,哈 . 这个就是使用phonegap框架搭建起来的,运行在安卓环境上的第一个demo. 安卓的开发环境,大家都会搭建了,所以不赘述.讲一下,安装phonegap的步骤. ...

  7. lnmp环境里安装mssql及mssql的php扩展

    小活中用到mssql,于是在自己lnmp环境中安装各mssql数据库 步骤如下: 源码编译安装 (1)下载freetds-stable-0.91源码:http://download.csdn.net/ ...

  8. linux下搭建lamp环境以及安装swoole扩展

    linux下搭建lamp环境以及安装swoole扩展   一.CentOS 6.5使用yum快速搭建LAMP环境 准备工作:先更新一下yum源  我安装的环境是:apache2.2.15+mysql5 ...

  9. RabbitMQ,Windows环境下安装搭建

    切入正题:RabbitMQ的Windows环境下安装搭建 一.首先安装otp_win64_20.1.exe,,, 二.然后安装,rabbitmq-server-3.6.12.exe, 安装完成后,在服 ...

随机推荐

  1. 微信APP支付 - C#

    最近挺忙的,没时间写东西.然后在弄微信APP支付,网上的搜索一趟,都比较凌乱,我也遇到一些坑,不过也算弄好了,记录分享一下. 1.准备各种调用接口需要的参数,配置app.config. <!-- ...

  2. 关于ubuntu系统boot分区空间不足而又无法卸载旧内核的解决方法

    2016年09月03日 14:16:45 萧氏一郎 阅读数:7802 标签: ubuntuboot分区清理更多 个人分类: linux   版权声明:本文为本猿原创文章,转载务必注明出处,多谢. ht ...

  3. list中存放map实例

    list中存放map实例 2016年08月08日 18:46:14 阅读数:22279 List中存放Map遍历输出的实例   import java.util.ArrayList;   import ...

  4. Static int data语句说明data为类变量,为一个类的共享变量,属于整个类

    面向对象高级:  修饰符: static:①可修饰变量(属性):②可修饰方法:③可修饰代码块. Static int data语句说明data为类变量,为一个类的共享变量,属于整个类. Int dat ...

  5. java------HashMap与HashSet的区别

    HashMap和HashSet的区别是Java面试中最常被问到的问题.如果没有涉及到Collection框架以及多线程的面试,可以说是不完整.而Collection框架的问题不涉及到HashSet和H ...

  6. css字体属性相关。

    出处:CSS 参考手册    http://www.w3school.com.cn/cssref/index.asp text-decoration 属性 说明:这个属性允许对文本设置某种效果,如加下 ...

  7. 如何编写jQuery插件

    要说jQuery 最成功的地方,我认为是它的可扩展性吸引了众多开发者为其开发插件,从而建立起了一个生态系统.这好比大公司们争相做平台一样,得平台者得天下.苹果,微软,谷歌等巨头,都有各自的平台及生态圈 ...

  8. 【RF库测试】对出错的处理

    1.出错后继续执行:Run Keyword And Continue On Failure 2.获取关键字执行结果后继续执行:Run Keyword And Ignore Error 有时候,我们需要 ...

  9. 计算某个目录下所有文件的MD5值

    #!/usr/bin/env python #-*- coding:utf-8 -*- ''' 计算某个目录下所有文件的MD5值 ''' import os import sys import has ...

  10. Cocos Studio编辑器运行日志路径

    有时候打开Cocos Studio直接崩溃,要想查找原因就要查log了,网上找了好久才找到日志路径,在你工作空间下面的CocosStudio2\logs. 工作空间就是安装时候设置的那个路径.