您当前的位置:首页 > 计算机 > 服务器 > 网络服务

LNMP环境搭建

时间:11-22来源:作者:点击数:
一、LNMP介绍

1.LNMP介绍

LNMP指的是Linux+Nginx+Mysql+Php

LNMP是指一组通常一起使用来运行动态网站或者服务器的自由软件名称首字母缩写。LNMP和LAMP不同的是,LNMP中提供web服务的是Nginx,并且php是作为一个独立服务存在的,这个服务叫做php-fpm,Nginx直接处理静态请求,动态请求会转发给php-fpm。

在这里插入图片描述

2.Nginx介绍

Nginx是一款轻量级的Web服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like 协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好,稳定性好。Nginx主要是处理静态请求。

二、实验环境

一台64位操作系统的RedHat6.5版本的Linux主机(本人是在虚拟机上进行实验的)

三、获取软件包

配置LNMP环境需要三个软件包:Nginx、Mysql、Php

链接:https://pan.baidu.com/s/1q3Os1KOCBKnNf6FF6Ir1SQ

提取码:s8py

四、配置详细步骤

1.将下载的软件包解压后放到虚拟机的root的目录下

在这里插入图片描述

2.配置yum

(1):修改配置文件

vim /etc/yum.repos.d/rhel-source.repo

在这里插入图片描述

(2):修改配置文件内容如下

在这里插入图片描述

(3):挂载光盘镜像

mount /dev/sr0 /mnt

在这里插入图片描述

3.配置Nginx

(1):卸载相关的软件包

rpm -e httpd --nodeps

rpm -e httpd-manual --nodeps

rpm -e webalizer --nodeps

rpm -e subversion --nodeps

rpm -e mod_python --nodeps

rpm -e mod_ssl --nodeps

rpm -e mod_perl --nodeps

在这里插入图片描述

(2):安装支持包

yum -y install pcre-devel

yum -y install zlib-devel

在这里插入图片描述
在这里插入图片描述

(3):创建nginx用户

useradd -M -s /sbin/nologin nginx

在这里插入图片描述

(4):解压nginx源码包

tar zxf /root/lnmp/nginx/nginx-1.6.0.tar.gz -C /usr/src/

在这里插入图片描述

(5):配置nginx

./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module

在这里插入图片描述

(6):编译及安装

make && make install(&&表示&&前面的命令执行成功了才会执行&&后面的命令)

在这里插入图片描述

(7):优化Nginx命令的执行路径

ln -s /usr/local/nginx/sbin/* /usr/local/sbin

在这里插入图片描述

(8):检测配置文件

nginx -t

在这里插入图片描述

(9):启动nginx服务,并查看运行端口

nginx

netstat -anpt | grep nginx

在这里插入图片描述
在这里插入图片描述

4.配置Mysql

(1):卸载Linux系统自带的mysql软件包

rpm -e mysql-server

rpm -e mysql

在这里插入图片描述

(2):安装支持包

yum -y install ncurses-devel

在这里插入图片描述

(3):安装cmake工具

  • 解压并配置cmake
    tar zxf /root/lnmp/mysql/cmkake-2.8.6.tar.gz -C /usr/src/
    ./configure
    在这里插入图片描述
  • 编译并安装cmake
    make && make install
    在这里插入图片描述

(4):创建mysql用户

uaeradd -M -s /sbin/nologin mysql

在这里插入图片描述

(5):解压mysql源码包

  • tar zxf /root/lnmp/mysql/mysql-5.5.22.tar.gz -C /usr/src
    在这里插入图片描述

(6):配置mysql

  • cmake . DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DSYSCONFDIR=/etc -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all
    选项含义如下
    -DCMAKE_INSTALL_PREFIX= 指定mysql的安装路径
    -DSYSCONFDIR= 指定mysql配置文件的所在目录
    -DDEFAULT_CHARSET 指定默认的字符集
    -DDEFAULT_COLLATION= 指定字符集的默认排序
    -DWITH_EXTRA_CHARSETS= 支持扩展字符集

    在这里插入图片描述

(7):编译并安装mysql

make && make install

在这里插入图片描述

(8):修改mysql安装目录的所有者权限

chown -R mysql:mysql /usr/local/mysql

在这里插入图片描述

(9):删除默认的mysql配置文件,拷贝生成新的配置文件

rm -rf /etc/my.cnf

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

在这里插入图片描述

(10):初始化mysql数据库

/usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data/

在这里插入图片描述

(11):修改环境变量PATH

将mysql命令追加到默认搜索路径中,并重定向到/etc/profile

echo “PATH=$PATH:/usr/local/mysql/bin” >> /etc/profile

在这里插入图片描述

(12):重新加载环境变量

. /etc/profile

在这里插入图片描述

(13):优化mysql执行路径

ln -s /usr/local/mysql/bin/* /usr/local/bin

ln -s /usr/local/mysql/lib/mysql/* /usr/lib/

ln -s /usr/local/mysql/include/mysql/* /usr/include/

在这里插入图片描述

(14):生成mysql启动脚本,并赋予执行权

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

chmod +x /etc/rc.d/init.d/mysqld

在这里插入图片描述

(15):将mysql服务添加到开机自启动中

chkconfig --add mysqld

在这里插入图片描述

(16):启动mysql服务,并查看运行端口

service mysqld start

netstat -anpt | grep mysqld

在这里插入图片描述

(17):登录mysql

mysql -u root -p

密码为空

在这里插入图片描述

(18):修改密码

set password for root@localhost = password(“密码”);

在这里插入图片描述

5.配置PHP

(1):卸载默认的php相关软件包

rpm -e php --nodeps

rpm -e php-cli --nodeps

rpm -e php-ldap --nodeps

rpm -e php-common --nodeps

rpm -e php-mysql --nodeps

在这里插入图片描述

(2):安装支持包(用于支持图片处理功能)

yum -y install gd

yum -y install libxml2-devel

yum -y install libjpeg-devel

yum -y install libpng-devel

在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

(3):安装php

  • 解压安装包并配置
    tar zxf /root/lnmp/php/php-5.3.28.tar.gz -C /usr/src/
    ./configure --prefix=/usr/local/php5 --with-gd --with-zlib --with-mysql=/usr/local/mysql --with-config-file-path=/usr/local/php5 --enable-mbstring --enable-fpm --with-jpeg-dir=/usr/lib
    选项含义如下:
    –prefix=/usr/local/php5 指定php的安装路径
    –with-gd 安装jd库(用于处理图片)
    –with-zlib 安装zlib库(实现页面压缩)
    –with-mysql=/usr/local/mysql 指定mysql路径
    –with-config-file-path=/usr/local/php5 指定php配置文件路径
    –enable-mbstring 开启多字节字符库(支持中文)
    –enable-fpm 开启fpm功能(FastCGI功能,支持高负载动态网站进程管理)
    –with-jpeg-dir=/usr/lib 指定jpeg图片处理链接库路径

    在这里插入图片描述
  • 安装并编译
    make && make install
    在这里插入图片描述

(4):拷贝生成php配置文件php.ini

cp php.ini-development /usr/local/php5/php.ini

在这里插入图片描述

(5):优化php的执行命令

ln -s /usr/local/php5/bin/* /usr/local/bin/

ln -s /usr/local/php5/sbin/* /usr/local/sbin/

在这里插入图片描述

(6):修改php.ini文件

vim /usr/local/php5/php.ini

在这里插入图片描述

修改内容如下

在这里插入图片描述
在这里插入图片描述

(7):解压ZendGuardLoader文件

tar zxf /root/lnmp/php/ZendGuardLoader-php-5.3-linux-glibc23-x86_64.tar.gz -C /usr/src/

在这里插入图片描述

cpZendGuardLoader.so/usr/local/php5/lib/php

在这里插入图片描述

(8):在php.ini文件中增加Zend功能(PHP加速)

vim /usr/local/php5/php.ini

在这里插入图片描述

在配置文件末尾添加如下内容

zned_extension=/usr/local/php5/lib/php/ZendGuardLoader.so

zend_loader.enable = 1

在这里插入图片描述

(9):拷贝生成fpm的配置文件

cd /usr/local/php5/etc/

cp php-fpm.conf.default php-fpm.conf

在这里插入图片描述

(10):创建php用户

useradd -M -s /sbin/nologin php

在这里插入图片描述

(11):修改php-fpm.conf配置文件,使其支持动态网站功能

vim /usr/local/php5/etc/php-fpm.conf

在这里插入图片描述

修改如下内容

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

(12):启动php-fpm服务,并查看运行端口

/usr/local/php5/sbin/php-fpm

netstat -anpt | grep php-fpm

在这里插入图片描述

(13):修改Nginx启动脚本,使系统能识别Nginx服务

配置nginx的启动脚本,由于nginx不像apache一样有配置脚本,因此需要在init.d目录下建立一个nginx来写启动脚本。(因此打开nginx后是一个新文件)

在这里插入图片描述

添加如下内容

#!/bin/bash
# chkconfig: - 99 20
# description: Nginx Service Control Script
PROG="/usr/local/nginx/sbin/nginx"
PIDF="/usr/local/nginx/logs/nginx.pid"
PROG_FPM="/usr/local/sbin/php-fpm"
PIDF_FPM=`netstat -anpt | grep 9000 | awk >'{print $7}' | awk -F/ '{print $1}'`
case "$1" in
  start)
    $PROG
    $PROG_FPM
    ;;
  stop)
    kill -s QUIT $(cat $PIDF)
    kill -s QUIT $PIDF_FPM
    ;;
  restart)
   kill -s QUIT $(cat $PIDF)
    kill -s QUIT $PIDF_FPM
    $PROG
    $PROG_FPM
    ;;
  reload)
    kill -s HUP $(cat $PIDF)
    ;;
  *)
    echo "Usage: $0 >{start|stop|restart|reload}"
    exit 1
esac
exit 0

(14):修改nginx.conf,让其支持php解析功能

vim /usr/local/nginx/conf/nginx.conf

在这里插入图片描述

修改内容如下

在这里插入图片描述

(15):添加Nginx服务到系统,使其开机后自动运行

chmod +x /etc/init.d/nginx

chkconfig --add nginx

service nginx restart

netstat -anpt | grep nginx

在这里插入图片描述

(16):建立PHP功能测试网页index.php

gedit /usr/local/nginx/html/index.php

在这里插入图片描述

(17):建立mysql功能测试网页test.php

gedit /usr/local/nginx/html/test.php

在这里插入图片描述

(18):在浏览器上输入http://localhost测试Nginx

在这里插入图片描述

表明Nginx配置正确!

(19):在浏览器上输入http://localhost/index.php测试PHP

在这里插入图片描述

表明PHP配置正确!

(20):在浏览器上输入http://localhost/test.php测试mysql

在这里插入图片描述

表明mysql配置正确!

至此,LNMP就配置完成了!!!

方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门