LNMP架构结介绍,MySQL和PHP的安装以及Nginx介绍

一、LNMP架构结介绍

LNMP代表的就是:Linux系统下Nginx+MySQL+PHP这种网站服务器架构。Nginx中的PHP是以fastcgi的方式结合Nginx的,可以理解为Nginx代理了PHP的fastcgi。

详细介绍可参考:http://blog.csdn.net/u013592371/article/details/73729892

二、LNMP架构-安装MySQL

LNMP中MySQL的安装步骤与LAMP中安装一样,这里简单写一下安装过程:

root@zhulinux-02 ~]# cd /usr/local/src/
[root@zhulinux-02 src]# wget http://mirrors.sohu.com/mysql/MySQL-5.6/mysql-5.6.36-linux-glibc2.5-x86_64.tar.gz
[root@zhulinux-02 src]# tar zxvf mysql-5.6.36-linux-glibc2.5-x86_64.tar.gz
[root@zhulinux-02 src]# mv mysql-5.6.36-linux-glibc2.5-x86_64 /usr/local/mysql
[root@zhulinux-02 src]# useradd mysql
[root@zhulinux-02 src]# cd /usr/local/mysql/
[root@zhulinux-02 mysql]# ls 
bin  COPYING  data  docs  include  lib  man  mysql-test  README  scripts  share  sql-bench  support-files
[root@zhulinux-02 mysql]# mkdir  /data/mysql
[root@zhulinux-02 mysql]# chown -R mysql:mysql /data/mysql/
[root@zhulinux-02 mysql]# ./scripts/mysql_install_db --user=mysql --datadir=/data/mysql/
//执行过程中可能会报错,根据提示,安装相应的包即可

[root@zhulinux-02 mysql]# vim /etc/my.cnf
[root@zhulinux-02 mysql]# cp support-files/mysql.server /etc/init.d/mysqld
[root@zhulinux-02 mysql]# chmod 755 /etc/init.d/mysqld 
[root@zhulinux-02 mysql]# vim /etc/init.d/mysqld 
[root@zhulinux-02 mysql]# chkconfig --add mysqld
[root@zhulinux-02 mysql]# chkconfig mysqld on
[root@zhulinux-02 mysql]# service mysqld start
Starting MySQL.Logging to '/data/mysql/zhulinux-02.err'.
 SUCCESS! 
[root@zhulinux-02 mysql]# ps aux |grep mysqld

安装过程报错,可参考前面LAMP安装MySQL博文。

三、LNMP架构-PHP安装

LAMP中的PHP与LNMP中的PHP的区别:
LAMP安装PHP和LNMP安装PHP有区别,LNMP需要开启php-fpm服务。
在LAMP中,PHP作为apache的一个模块,需要指定路径。 在LNMP中,PHP作为一个独立的服务,和Nginx没有直接的关系。

PHP安装过程如下:

1、下载PHP源码包

[root@zhulinux-02 mysql]# cd ../src/
[root@zhulinux-02 src]# wget http://cn2.php.net/distributions/php-5.6.30.tar.bz2

2、解压源码包,创建账户

[root@zhulinux-02 src]# tar jxf php-5.6.30.tar.bz2
[root@zhulinux-02 src]# useradd php-fpm
//此帐号用来运行php-fpm服务。在LNMP环境中,PHP是以一个服务php-fpm的形式出现,独立存在Linux中,方便管理

3、配置编译选项

[root@zhulinux-02 php-5.6.30]# ./configure --prefix=/usr/local/php-fpm --with-config-file-path=/usr/local/php-fpm/etc --enable-fpm --with-fpm-user=php-fpm --with-fpm-group=php-fpm --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-pdo-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 --with-pear --with-curl  --with-openssl

安装中可能会出现这个错误:

configure: error: Please reinstall the libcurl distribution -
    easy.h should be in <curl-dir>/include/curl/

[root@zhulinux-02 php-5.6.30]# yum install -y libcurl-devel     //解决方法

编译参数和LAMP不同,多了一个--enable-fpm,如果不加该参数,则不会执行php-fpm执行文件生成,更不能启动php-fpm`服务。在安装过程中出现错误,课参考LAMP中PHP安装的博文。

4、编译PHP

[root@zhulinux-02 php-5.6.30]# make
[root@zhulinux-02 php-5.6.30]# echo $?
0

编译过程有点慢,耐心等待。如出现错误,分析问题,搜索解决方案。

5、安装

[root@zhulinux-02 php-5.6.30]# make install
[root@zhulinux-02 php-5.6.30]# echo $?
0

6、修改配置文件

[root@zhulinux-02 php-5.6.30]# cp php.ini-production /usr/local/php-fpm/etc/php.ini
[root@zhulinux-02 php-fpm]# cd etc/
[root@zhulinux-02 etc]# vim php-fpm.conf   //添加如下内容

[global]
#定义全局参数
pid = /usr/local/php-fpm/var/run/php-fpm.pid
error_log = /usr/local/php-fpm/var/log/php-fpm.log
[www]
listen = /tmp/php-fcgi.sock
#监听地址,也可以写:listen = 127.0.0.1:9000,本地监听,也可以监听其他IP:port
#此处格式会影响配置Nginx和PHP结合时Nginx寻址PHP的路径
listen.mode = 666
#当监听的为socket文件时该部分才生效,用于指定.sock文件的权限
user = php-fpm
group = php-fpm
#定义php-fpm服务的用户
pm = dynamic
pm.max_children = 50
pm.start_servers = 20
pm.min_spare_servers = 5
pm.max_spare_servers = 35
pm.max_requests = 500
rlimit_files = 1024
#以上部分为进程相关信息

[root@zhulinux-02 etc]# cp /usr/local/src/php-5.6.30/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
[root@zhulinux-02 etc]# chmod 755 /etc/init.d/php-fpm 
[root@zhulinux-02 etc]# chkconfig --add php-fpm   //添加系统服务
[root@zhulinux-02 etc]# chkconfig php-fpm on       //开机启动
[root@zhulinux-02 etc]# service php-fpm start
Starting php-fpm  done
[root@zhulinux-02 etc]# ps aux |grep php-fpm
root       1032  0.0  0.2 123560  4948 ?        Ss   15:39   0:00 php-fpm: master process (/usr/local/php-fpm/etc/php-fpm.conf)
php-fpm    1033  0.0  0.2 123560  4704 ?        S    15:39   0:00 php-fpm: pool www
php-fpm    1034  0.0  0.2 123560  4704 ?        S    15:39   0:00 php-fpm: pool www
php-fpm    1035  0.0  0.2 123560  4704 ?        S    15:39   0:00 php-fpm: pool www
php-fpm    1036  0.0  0.2 123560  4704 ?        S    15:39   0:00 php-fpm: pool www
php-fpm    1037  0.0  0.2 123560  4708 ?        S    15:39   0:00 php-fpm: pool www
php-fpm    1038  0.0  0.2 123560  4708 ?        S    15:39   0:00 php-fpm: pool www
php-fpm    1039  0.0  0.2 123560  4708 ?        S    15:39   0:00 php-fpm: pool www
php-fpm    1040  0.0  0.2 123560  4708 ?        S    15:39   0:00 php-fpm: pool www
php-fpm    1041  0.0  0.2 123560  4708 ?        S    15:39   0:00 php-fpm: pool www
php-fpm    1042  0.0  0.2 123560  4712 ?        S    15:39   0:00 php-fpm: pool www
php-fpm    1043  0.0  0.2 123560  4712 ?        S    15:39   0:00 php-fpm: pool www
php-fpm    1044  0.0  0.2 123560  4712 ?        S    15:39   0:00 php-fpm: pool www
php-fpm    1045  0.0  0.2 123560  4712 ?        S    15:39   0:00 php-fpm: pool www
php-fpm    1046  0.0  0.2 123560  4712 ?        S    15:39   0:00 php-fpm: pool www
php-fpm    1047  0.0  0.2 123560  4712 ?        S    15:39   0:00 php-fpm: pool www
php-fpm    1048  0.0  0.2 123560  4712 ?        S    15:39   0:00 php-fpm: pool www
php-fpm    1049  0.0  0.2 123560  4712 ?        S    15:39   0:00 php-fpm: pool www
php-fpm    1050  0.0  0.2 123560  4712 ?        S    15:39   0:00 php-fpm: pool www
php-fpm    1051  0.0  0.2 123560  4712 ?        S    15:39   0:00 php-fpm: pool www
php-fpm    1052  0.0  0.2 123560  4712 ?        S    15:39   0:00 php-fpm: pool www
root       1054  0.0  0.0 112680   968 pts/0    R+   15:39   0:00 grep --color=auto php-fpm

四、Nginx介绍

Nginx(“engine x”)是一款轻量级的Web
服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like
协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:百度、新浪、网易、腾讯、
淘宝等。

更多介绍可参考:https://www.cnblogs.com/yeyublog/p/6412606.html
Nginx为什么比Apache Httpd高效:原理篇:http://www.toxingwang.com/linux-unix/linux-basic/1712.html
apache和nginx工作原理比较:https://www.server110.com/nginx/201402/6543.html
mod_php 和 mod_fastcgi以及php-fpm的比较:https://wenku.baidu.com/view/887de969561252d380eb6e92.html
概念了解:CGI,FastCGI,PHP-CGI与PHP-FPM:http://www.nowamagic.net/librarys/veda/detail/1319/
https://www.awaimai.com/371.html

转载于:https://blog.51cto.com/3069201/2085553

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
智慧校园的建设目标是通过数据整合、全面共享,实现校园内教学、科研、管理、服务流程的数字化、信息化、智能化和多媒体化,以提高资源利用率和管理效率,确保校园安全。 智慧校园的建设思路包括构建统一支撑平台、建立完善管理体系、大数据辅助决策和建设校园智慧环境。通过云架构的数据心与智慧的学习、办公环境,实现日常教学活动、资源建设情况、学业水平情况的全面统计和分析,为决策提供辅助。此外,智慧校园还涵盖了多媒体教学、智慧录播、电子图书馆、VR教室等多种教学模式,以及校园网络、智慧班牌、校园广播等教务管理功能,旨在提升教学品质和管理水平。 智慧校园的详细方案设计进一步细化了教学、教务、安防和运维等多个方面的应用。例如,在智慧教学领域,通过多媒体教学、智慧录播、电子图书馆等技术,实现教学资源的共享和教学模式的创新。在智慧教务方面,校园网络、考场监控、智慧班牌等系统为校园管理提供了便捷和高效。智慧安防系统包括视频监控、一键报警、阳光厨房等,确保校园安全。智慧运维则通过综合管理平台、设备管理、能效管理和资产管理,实现校园设施的智能化管理。 智慧校园的优势和价值体现在个性化互动的智慧教学、协同高效的校园管理、无处不在的校园学习、全面感知的校园环境和轻松便捷的校园生活等方面。通过智慧校园的建设,可以促进教育资源的均衡化,提高教育质量和管理效率,同时保障校园安全和提升师生的学习体验。 总之,智慧校园解决方案通过整合现代信息技术,如云计算、大数据、物联网和人工智能,为教育行业带来了革命性的变革。它不仅提高了教育的质量和效率,还为师生创造了一个更加安全、便捷和富有智慧的学习与生活环境。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值