当前位置:首页 > 技术文章 > 正文内容

Open Euler Linux系统LNMP架构实操!

arlanguage3个月前 (01-31)技术文章27

LNMP不是指一个独立的软件,而是由四个组件组成的:L、N、M、P,LNMP具体组件含义如下: L,代表的是基于Linux内核开发的系统; N,代表的是Nginx WEB软件; M,代表的是MYSQL、Mariadb关系型数据库; P,代表的是PHP、Python、Perl语言&环境。

LNMP工作原理:

用户通过浏览器向Nginx发起Request请求,Nginx WEB检测到用户请求的静态网页(文件),Nginx WEB则自己处理&响应。

如果Nginx WEB检测到用户请求的动态网页,Nginx WEB会基于FastCGI协议将请求转发至后端PHP-FPM程序去处理。

PHP-FPM是PHP网页解释器,能够将动态PHP程序解析为静态脚本、内容,如果PHP网页需要连接后端数据库,则通过PHP-MYSQL驱动去连接、读取数据库中的数据。

PHP-FPM解释器解析PHP动态网页、程序,解析完成之后会将最终的数据返回给Nginx,由Nginx WEB再返给用户端。

现在咱们基于OpenEuler Linux 22.x系统来构建一套LNMP WEB架构,采用YUM方式部署。先来部署Nginx!

一,安装Nginx软件服务:yum install -y nginx

启动Nginx服务进程:systemctl start nginx

Firewalld防火墙对外开放80端口:

firewall-cmd --add-port=80/tcp --permanent

systemctl reload firewalld.service

访问服务器的IP地址,就可以看到NGINX的欢迎页了!

二,安装MYSQL软件服务:yum install -y mysql-server mysql

启动MYSQL服务进程:systemctl start mysqld.service

Firewalld防火墙对外开放3306端口:

firewall-cmd --add-port=3306/tcp --permanent

systemctl reload firewalld.service

启动以后,查找安装的默认密码:

grep'password' /var/log/mysql/mysqld.log

然后更改root密码。

ALTER USER 'root'@'localhost' IDENTIFIED BY 'XXXXXXX';


三,部署PHP-FPM的方法和指令如下:

安装PHP-FPM软件服务:

yum install -y php-fpm php-mysqlnd

启动PHP-FPM服务进程:

systemctl start php-fpm.service

Firewalld防火墙对外开放9000端口:

firewall-cmd --add-port=9000/tcp --permanent

systemctl reload firewalld.service

四,将Nginx和PHP-FPM整合形成一个完整的WEB架构,Nginx可以处理静态网页,而PHP-FPM则去处理PHP动态网页。修改Nginx主配置文件nginx.conf代码如下:

worker_processes 1;

events {

worker_connections 1024;

}

http {

include mime.types;

default_type application/octet-stream;

sendfile on;

keepalive_timeout 65;

server {

listen 80;

server_name localhost;

location / {

root /usr/share/nginx/html;

index index.php index.html index.htm;

}

error_page 500 502 503 504 /50x.html;

location = /50x.html {

root html;

}

location ~ \.php$ {

root /usr/share/nginx/html;

fastcgi_pass 127.0.0.1:9000;

fastcgi_index index.php;

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

include fastcgi_params;

}

}

}


在Nginx WEB网站发布目录/usr/share/nginx/html创建index.php测试页面,测试代码如下:

phpinfo();

?>


如果打不开PHP文件,需要修改一下PHP-FPM下的www.conf文件

改好以后,systemctl restart php-fpm

输入命令 Netstat -tpln 看到,NGINX,MYSQL,PHP-FPM都已经启动起来了

以上整个环境就搭好了。比如你要是弄个DZ论坛的话,直接上传到/usr/share/nginx/html目录下,访问安装就可以了!

扫描二维码推送至手机访问。

版权声明:本文由AR编程网发布,如需转载请注明出处。

本文链接:http://www.arlanguage.com/post/1216.html

标签: nginx php 502
分享给朋友:

“Open Euler Linux系统LNMP架构实操!” 的相关文章

nginx -> frps -> frpc -> 内网服务器

1. Nginx简介概述Nginx是一个高性能的HTTP和反向代理服务器,也可以作为邮件代理服务器。它以其高并发处理能力、低内存占用和高效的事件驱动模型而闻名。其主要功能包括处理静态文件服务、反向代理、负载均衡等。例如,在处理大量的静态网页请求时,Nginx可以快速地将请求对应的静态文件发送给客户端...

linux安装nginx及简单操作

下载安装包:通过这个命令下载安装包linux安装nginx:1、解压安装包: tar -zxvf nginx-1.14.0.tar.gz2、cd 进入解压后的目录3、编译安装:./configure --prefix=/usr/local/nginx (如果编译不成功,缺少的依赖库 根据提示安装上后...

给你的Nginx加个防火墙

引言朋友的一个 WordPress 站经常访问慢。看了一下日志,发现整天被扫描网站目录,如phpmyadmin 或者 SQL 文件,和被 CC攻击。找了一下,发现 ngx_lua_waf 是个不错的方案,但是太久不更新了,而且代码我看不懂,猝最后找到 oneinstack 一键包内置的 ngx_lu...

轻松搭建基于 Serverless 的 ThinkPHP 应用

ThinkPHP 是什么?ThinkPHP 是一个免费开源的,快速、简单的面向对象的轻量级 PHP 开发框架,是为了敏捷 WEB 应用开发和简化企业应用开发而诞生的。ThinkPHP 从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简代码的同时,更注重易用性。遵循 Apache2 开源许可...

为什么一条UPDATE语句有索引反而更慢

先来看看今天要讲的主人翁:UPDATE `i_msg_system` set `deliver`=1 where `uid`=10000 and `msg_group`=0 and `deliver`=0;涉事表结构:CREATE TABLE `i_msg_system` ( `id` int(...

Nginx安全相关配置常用教程 nginx安全策略

1. 限制请求速度设置 Nginx、Nginx Plus 的连接请求在一个真实用户请求的合理范围内。比如,如果你觉得一个正常用户每两秒可以请求一次登录页面,你就可以设置 Nginx 每两秒钟接收一个客户端 IP 的请求(大约等同于每分钟30个请求)。limit_req_zone $binary_re...