1.LNMP是什么?
LNMP是指一组通常一起使用来运行动态网站或者服务器的自由软件名称首字母缩写。L指Linux,N指Nginx,M一般指MySQL,也可以指MariaDB,P一般指PHP,也可以指Perl或Python。
LNMP代表的就是:Linux系统下Nginx+MySQL+PHP这种网站服务器架构。
Linux是一类Unix计算机操作系统的统称,是目前最流行的免费操作系统。代表版本有:debian、centos、ubuntu、fedora、gentoo等。
Nginx是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP代理服务器。
Mysql是一个小型关系型数据库管理系统。
PHP是一种在服务器端执行的嵌入HTML文档的脚本语言。
这四种软件均为免费开源软件,组合到一起,成为一个免费、高效、扩展性强的网站服务系统。
2.LNMP和LAMP的区别
1.区别:
1.在LAMP中,php是作为apache的一个模块,被apache加载并调用。 当处理php脚本时,是由apache来完成的,而实际上是apache的模块libphp5.so 处理的。
2.nginx中,php-fpm服务作为独立的服务存在,真正处理php脚本的工作是由php-fpm来完成的,而nginx仅仅是把用户的请求发给php-fpm,然后再把php-fpm的处理结果发给用户。
2.选择:
1.LNMP的优点:占用VPS资源较少,Nginx配置起来也比较简单,且Nginx 性能稳定、功能丰富、运维简单、处理静态文件速度快且消耗系统资源极少。
缺点:php-fpm组件的负载能力有限,在访问量巨大的时候,php-fpm进程容易僵死,容易发生502 bad gateway错误。
2.LAMP的优点:Apache 是 LAMP 架构最核心的 Web Server,开源、稳定、模块丰富是 Apache 的优势。
缺点:Apache 的缺点是有些臃肿,内存和 CPU 开销大,性能上有损耗,不如一些轻量级的 Web 服务器
因此,在服务器配置比较低的个人网站时LNMP 架构会更好。在大流量的时候。把Apache和Nginx结合起来使用,也不失为一个不错选择。
3.LNMP的搭建
1.安装mysql
1.准备:
tar zxf mysql-boost-5.7.17.tar.gz #解压安装包
useradd -s /sbin/nologin -M mysql #创建mysql用户
yum install cmake -y #安装cmake,mysql用cmake编译
yum install -y gcc gcc-c++ ncurses-devel openssl-devel bison -y
#解决依赖性
2.编译:
cd /lnmp/mysql-5.7.17/
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/lnmp/mysql \ #安装位置
> -DMYSQL_UNIX_ADDR=/usr/local/lnmp/mysql/data/mysql.sock \ #指定套接字文件位置
> -DEXTRA_CHARSETS=all \ #扩展字符集
> -DDEFAULT_CHARSET=utf8 \ #默认字符集
> -DDEFAULT_COLLATION=utf8_general_ci \ #默认字符校对
> -DWITH_INNOBASE_STORAGE_ENGINE=1 \ #安装 innodb 存储引擎
> -DWITH_MYISAM_STORAGE_ENGINE=1 \ #安装 myisam 存储引擎
> -DWITH_MEMORY_STORAGE_ENGINE=1 \ #安装 memory 存储引擎
> -DWITH_READLINE=1 \ #支持 readline 库
> -DENABLED_LOCAL_INFILE=1 \ #启用加载本地数据
> -DMYSQL_USER=mysql \ #指定 mysql 运行用户
> -DMYSQL_TCP_PORT=3306 -DWITH_BOOST=boost/boost_1_59_0/ #指定 mysql 端口
当编译出错,需要重新编译时,需要清除原来的对象文件和缓存信息:
make clean
rm -fr CmakeCache.txt
3.安装:
make && make install 时间会比较久。
4.修改权限
5.初始化
修改密码
6.登录成功
2.安装PHP
1.解决依赖性:
yum install -y libxml2-devel
yum install -y libpng-devel
yum install -y oniguruma-*
2.编译:
3.拷贝更改配置文件:
cd /usr/local/lnmp/php/etc
cp php-fpm.conf.default php-fpm.conf
vim php-fpm.conf
4.拷贝子配置文件:
cd /usr/local/lnmp/php/etc/php-fpm.d
cp www.conf.default www.conf
vim www.conf
user = nginx
group = nginx
5.拷贝更改 php 主配置文件:
cp php.ini-production /usr/local/lnmp/php/etc/php.ini
修改时区:date.timezone = Asia/Shanghai
6.拷贝 php 启动脚本至/etc/init.d/:
cd /root/php-7.4.1/sapi/fpm
cp init.d.php-fpm /etc/init.d/php-fpm
chmod +x /etc/init.d/php-fpm
7.启动:
3.安装nginx
1.解压软件后进入 nginx 解压包:
vim src/core/nginx.h
修改: #define NGINX_VER "nginx/"(将此行末尾显示 nginx 版本号的配置删除,主要是为了安全。
vim auto/cc/gcc
修改:
# debug
#CFLAGS="$CFLAGS -g" (将这 2 行注释调,关闭 debug)
2.编译安装 nginx:(先要解决依赖性)
3.修改 nginx 配置文件,开启 php 模块:
4.将 nginx 启动脚本链接到/usr/local/sbin/,检测语法,开启:
5.在 nginx 默认发布目录添加 index.php ,vim /usr/local/lnmp/nginx/html/index.php :
6.可以访问php默认发布页面。
4.论坛部署
1.解压wordpress,并在nginx中添加访问路径:
2.在数据库中添加该论坛库:
3.修改权限:
4.浏览器测试:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)