LNMP架构的搭建


  • centos6.8-i686

  • MySQL

  • PHP

  • Nginx

搭建前先安装一些必要的rpm和php组件(全新系统)

yum install -y wget gcc vim* libxml2 libxml2-devel openssl openssl-devel curl libcurl-devel libjpeg-turbo libjpeg-turbo-devel libpng libpng-devel freetype freetype-devel

mysql和lamp的MySQL安装是一样的

下载

cd /usr/local/src/
wget http://mirrors.sohu.com/mysql/MySQL-5.1/mysql-5.1.73-linux-i686-glibc23.tar.gz

初始化tar

 tar zxvf /usr/local/src/mysql-5.1.73-linux-i686-icc-glibc23.tar.gz //解压
mv mysql-5.1.73-linux-i686-icc-glibc23 /usr/local/mysql //挪动位置
useradd -s /sbin/nologin mysql //建立 mysql 用户
cd /usr/local/mysql
mkdir -p /data/mysql // 创建 datadir,数据库文件会放到这里面
chown -R mysql:mysql /data/mysql //更改权限
./scripts/mysql_install_db --user=mysql --datadir=/data/mysql --user 定义数据库的所属主,--datadir 定义数据库安装到哪里

验证一下 echo $?

常见问题

(1)错误: ./bin/mysqld: error while loading shared libraries: libstdc++.so.5: cannot
      open shared object file:
    解决:
      yum install -y compat-libstdc++-33
(2)错误:./scripts/mysql_install_db: ./bin/my_print_defaults: /lib/ld-linux.so.2: bad
      ELF interpreter: No such file or directory
    这是因为,你的系统版本和 mysql 版本不一致。比如,你的系统是 32 位,结果你下载
    了一个 64 位的包。所以,解决办法是,下载合适的包。

配置

  拷贝配置文件 

  cp support-files/my-large.cnf /etc/my.cnf

  拷贝启动脚本文件并修改其属性 

  cp support-files/mysql.server /etc/init.d/mysqld
  chmod 755 /etc/init.d/mysqld

  修改启动脚本 

  vim /etc/init.d/mysqld
  修改的地方 “datadir=/data/mysql” (前面初始化数据库时定义的目录)

 把启动脚本加入系统服务项,设定开机启动并启动 mysql 

  chkconfig --add mysqld
  chkconfig mysqld on
  service mysqld start

常见问题

 如果启动不了,请到 /data/mysql/ 下查看错误日志,这个日志通常是主机名.err。

  检查mysql 是否启动的命令为:   

   ps aux |grep mysqld


PHP

下载

cd /usr/local/src
wget http://au1.php.net/distributions/php-5.4.44.tar.bz2

解压

tar jxf php-5.4..tar.bz2

创建用户

useradd -s /sbin/nologin php-fpm

配置编译

cd php-5.4.
./configure --prefix=/usr/local/php-fpm --with-config-file-path=/usr/local/php/etc --enable-fpm --with-fpm-user=php-fpm --with-fpm-group=php-fpm --with-mysql=/usr/local/mysql --with-mysql-sock=/tmp/mysql.sock --with-libxml-dir --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --with-iconv-dir --with-zlib-dir --with-mcrypt --enable-soap --enable-gd-native-ttf --enable-ftp --enable-mbstring --enable-exif --enable-zend-multibyte --disable-ipv6 --with-pear --with-curl --with-openssl

错误信息

yum list |grep 组件名
#刚开始差不多都安装过了,如果还有没安装的
yum install -y 包名

编译和安装这个时间比较长

make && make install

这一步可能会有错误

yum install -y libtool-ltdl-devel

修改配置文件

 cp php.ini-production /usr/local/php/etc/php.ini
cp /usr/local/php-fpm/etc/{php-fpm.conf.default php-fpm.conf}

检查配置文件是否正确

 /usr/local/php/sbin/php-fpm -t
#会出现
test is successful
#代表配置文件正确

启动php-fpm并加入到开机启动

#先拷贝一个文件
cp /usr/local/src/php-5.3./sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
#给它更改权限为
chmod /etc/init.d/php-fpm
#启动服务
service php-fpm start
#加入服务列表
chkconfig --add php-fpm
#加入开机启动
chkconfig php-fpm on
#检查是否开启服务
ps aux |grep php-fpm

Nginx

下载

cd /usr/local/src/
wget http://nginx.org/download/nginx-1.8.0.tar.gz

解压

tar zxvf nginx-1.8..tar.gz

配置编译

 ./configure --prefix=/usr/local/nginx --with-pcre

这里可能会报错缺少pcre组件

yum install -y pcre-devel

编译和安装

make && make install

启动Nginx

/usr/local/nginx/sbin/nginx

检查是否启动服务

ps aux |grep nginx

测试php-fpm解析

  先修改配置文件

vim /usr/local/nginx/conf/nginx.conf
#找到
location / {
            root   html;
            index  index.html index.htm index.php;
        }
#添加index.php
#找到
location ~ \.php$ {
            root           html;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  /usr/local/nginx/html$fastcgi_script_name;
            include        fastcgi_params;
        }
#修改成/usr/local/nginx/html

 重新加载

/usr/local/nginx/sbin/nginx -s reload

  测试

  创建一个php文件

vim /usr/local/nginx/html/.php
#在里面写
<?php
phpinfo();
?>
#保存退出

  打开浏览器输入ip/1.php

  出现info信息说明解析成功

Linux:LNMP架构的搭建的更多相关文章

  1. LNMP架构的搭建

    第9章 LNMP架构的搭建 9.1 什么是LNMP 9.1.1 LNMP的组成 L                linux N                nginx:实现静态的服务处理 M    ...

  2. LNMP架构基础搭建

    LNMP架构+wordpress博客 环境: centos6.7 2.6.32-573.el6.x86_64 nginx-1.6.3 mysql-5.5.49 php-5.3.27 wordpress ...

  3. Linux LNMP架构搭建

    一.搭建LNMP基本架构 1.L(http) N(nginx) M(mysql) P(php) 2.安装顺序 Mysql-->PHP-->Nginx 3.安装包 Discuz_3. htt ...

  4. LNMP架构之搭建wordpress博客网站

    系统环境版本 [root@db02 ~]# cat /etc/redhat-release CentOS release 6.9 (Final) [root@db02 ~]# uname -a Lin ...

  5. s28 LNMP架构服务搭建

    nginx-location使用 location语法 location使用的语法例子为: location [=|~|~*|^~] uri{ 对location语法列表说明. |1ocation | ...

  6. Linux系统下LNMP架构搭建

    一.防火墙状态: 1.查看防火墙状态: systemctl status firewalld service iptables status firewall-cmd --state 2.永久有效开启 ...

  7. 企业级LNMP架构搭建实例(基于Centos6.x)

    1.1 部署LNMP架构说明 1.1.1 LNMP架构内容 01.部署linux系统 02.部署nginx网站服务 03.部署mysql数据库服务 04.部署php动态解析服务 1.1.2 配置LNM ...

  8. Linux(12):期中架构(4)--- 前端部分:HTTP & Nginx & LNMP架构

    HTTP协议概念原理说明 1. 当用户访问一个网站时经历的过程 # ①. 利用DNS服务,将输入的域名解析为相应的IP地址 a 本地主机输入域名后,会查询本地缓存信息和本地hosts b 本地主机会向 ...

  9. 《Linux就该这么学》培训笔记_ch20使用LNMP架构部署动态网站环境

    <Linux就该这么学>培训笔记_ch20使用LNMP架构部署动态网站环境 文章最后会post上书本的笔记照片. 文章主要内容: 源码包程序 LNMP动态网站架构 配置Mysql服务 配置 ...

随机推荐

  1. CCPC-Wannafly Winter Camp Day7 (Div2, onsite)

    Replay Dup4: 啥都不会? 只能看着两位聚聚A题? X: 模拟题不会写, 日常摔锅 u, v分不清, 日常演员 又是自己没理清楚就抢键盘上机导致送了一万个罚时, 日常背锅 A:迷宫 Solv ...

  2. 线程、进程、daemon、GIL锁、线程锁、递归锁、信号量、计时器、事件、队列、多进程

    # 本文代码基于Python3 什么是进程? 程序并不能单独运行,只有将程序装载到内存中,系统为它分配资源才能运行,而这种执行的程序就称之为进程.程序和进程的区别就在于:程序是指令的集合,它是进程运行 ...

  3. Android性能优化典范 - 第1季

    https://www.zhihu.com/question/30138734 http://hukai.me/android-performance-patterns/ 2015新年伊始,Googl ...

  4. Ubuntu下常用强化学习实验环境搭建(MuJoCo, OpenAI Gym, rllab, DeepMind Lab, TORCS, PySC2)

    http://lib.csdn.net/article/aimachinelearning/68113 原文地址:http://blog.csdn.net/jinzhuojun/article/det ...

  5. cookie注入原理详解(一)

    那我们还是围绕以下几个问题来看看cookie注入: 1.什么是cookie注入? 2.为什么要cookie注入? 3.怎样cookie注入? 1.什么是cookie注入? ♦cookie注入的原理是: ...

  6. MFC各种属性定义及DLL使用理解

    ps:如果需要使用第三方动态库,需要下面几个因素配置 1.第三方库提供的源文件[C/C++,常规,附加包含目录] 2.动态库[和生成的exe放一起] 3.LIB文件的目录[链接器,附加库目录] 4.L ...

  7. HDU 2955 Robberies(概率DP,01背包)题解

    题意:给出规定的最高被抓概率m,银行数量n,然后给出每个银行被抓概率和钱,问你不超过m最多能拿多少钱 思路:一道好像能直接01背包的题,但是有些不同.按照以往的逻辑,dp[i]都是代表i代价能拿的最高 ...

  8. .Net web 关于表单标题

    今天跟以前同事学到一个好东西,就是后台web界面表单标题展示的一个方法,新学到的一个方法...赶紧分享一下 在model 属性上加  [DisplayName("标题"), Req ...

  9. POJ 2115 C Looooops(模线性方程)

    http://poj.org/problem?id=2115 题意: 给你一个变量,变量初始值a,终止值b,每循环一遍加c,问一共循环几遍终止,结果mod2^k.如果无法终止则输出FOREVER. 思 ...

  10. OpenGL超级宝典笔记——遮挡查询 [转]

    目录[-] 遮挡查询之前 包围体 遮挡查询 在一个场景中,如果有有些物体被其他物体遮住了不可见.那么我们就不需要绘制它.在复杂的场景中,这可以减少大量的顶点和像素的处理,大幅度的提高帧率.遮挡查询就是 ...