LNMP配置与网页动静分离
LNMP配置与网页动静分离
-
LNMP概述
LNMP是Linux, Nginx, MySQL, PHP的缩写,代表一种高效、灵活的网站服务器架构。在这种架构中,Linux作为操作系统,Nginx用作Web服务器,MySQL作为数据库管理系统,而PHP是服务器端脚本语言。这些组件都是免费和开源的,它们共同构成了一个成本低廉且性能优越的Web服务解决方案。
-
什么是动态网页
在客户不同的环境下(IP、账户、访问设备等),服务器提供的网页是不不一样的,默认情况下Nginx只能处理静态网页,用户访问任何数据都是直接返回对应的文件,如果如果访问的是一个脚本的话,就会导致直接返回一个脚本给用户,而用户没有脚本解释器,也看不懂脚本源代码。因此需要整合LNMP实现动态网页的效果。
-
LNMP环境准备
-
软件安装
基础环境是LINUX系统和,就不在赘述,主要阐述Nginx、数据库(Mysql或MariaDB)、后端代码环境的安装
安装Nginx
[root@proxy ~]# /usr/local/nginx/sbin/nginx -s stop #如果nginx没有停止,执行命令停止,如果已经停止,无需执行 [root@proxy ~]# rm -rf /usr/local/nginx/ #删除nginx原有目录 [root@proxy ~]# cd /root/lnmp_soft/nginx-1.22.1/ [root@proxy nginx-1.22.1]# yum -y install gcc make openssl-devel pcre-devel [root@proxy nginx-1.22.1]# ./configure --with-http_ssl_module [root@proxy nginx-1.22.1]# make && make install #编译安装安装数据库和代码解释器
[root@proxy nginx-1.22.1]# yum -y install mariadb mariadb-server mariadb-devel php php-mysqlnd php-fpm mariadb(数据库客户端软件)、mariadb-server(数据库服务器软件)、mariadb-devel(依赖包)、php(识别php语言)、php-fpm(进程管理器服务)、php-mysqlnd(PHP的数据库扩展包) -
服务启动
启动Nginx
[root@proxy nginx-1.22.1]# /usr/local/nginx/sbin/nginx [root@proxy nginx-1.22.1]# ss -antlp | grep 80 tcp LISTEN 0 128 0.0.0.0:80 0.0.0.0:* users:(("nginx",pid=15507,fd=6),("nginx",pid=15506,fd=6))启动Mysql(MariaDB)
[root@proxy nginx-1.22.1]# systemctl enable --now mariadb #加入开机自启并立即启动 [root@proxy nginx-1.22.1]# systemctl status mariadb #查看服务状态启动PHP-FPM服务
[root@proxy nginx-1.22.1]# systemctl enable --now php-fpm #加入开机自启并立即启动 [root@proxy nginx-1.22.1]# systemctl status php-fpm #查看服务状态
-
-
配置动静分离
FAST-CGI是快速公共(通用)网关接口,可以连接Nginx等网站程序到语言解释器(比如PHP),php-fpm进程使用了FAST-CGI来解析动态页面。
![Fastcgi 原理-CSDN博客]()
-
修改Nginx配置文件
[root@proxy ~]# vim /usr/local/nginx/conf/nginx.conf ... 65 location ~ \.php$ { #~是使用正则表达式匹配以.php结尾,\ 转义 66 root html; 67 fastcgi_pass 127.0.0.1:9000; #将请求转发给本机php-fpm的9000端口 68 fastcgi_index index.php; #网站默认页 69 include fastcgi.conf; #加载fastcgi配置文件 70 } -
修改php-fpm配置文件
打开php-fpm配置文件,注意该配置文件中;(分号)是注释 [root@proxy nginx-1.22.1]# vim /etc/php-fpm.d/www.conf 38 listen = 127.0.0.1:9000 #更改php-fpm端口号(使用网络通信) [root@proxy nginx-1.22.1]# systemctl restart php-fpm #重启服务 [root@proxy nginx-1.22.1]# ss -antlp | grep 9000 #查看监听端口 LISTEN 0 128 127.0.0.1:9000 0.0.0.0:* users:(("php-fpm",pid=15808,fd=8),("php-fpm",pid=15807,fd=8),("php-fpm",pid=15806,fd=8),("php-fpm",pid=15805,fd=8),("php-fpm",pid=15804,fd=8),("php-fpm",pid=15803,fd=6)) 了解: [root@proxy nginx-1.22.1]# vim /etc/php-fpm.d/www.conf 115 pm.max_children = 50 #最大进程数量 120 pm.start_servers = 5 #最小进程数量完成以上步骤就可以开启对于php代码编写的动态网页解释,可以正常展示显示的网页内容。
-

浙公网安备 33010602011771号