部署LNMP动态网站

部署LNMP动态网站

  • 安装LNMP平台相关软件
    • 1. 安装软件包
    • 2. 启动服务(nginx、mariadb、php-fpm)
    • 3. 修改Nginx配置文件,实现动静分离
    • 4. 配置数据库
  • 上线wordpress代码 (测试搭建的LNMP环境是否可以使用)
    • 1. 上线php动态网站代码
    • 2. 初始化网站配置(使用客户端访问web服务器IP)
  • 网站后台管理
    • 1. 访问数据库
    • 2. 查看配置信息

方案:

在这里插入图片描述
LNMP 网站运行环境 Linux / nginx / mysql / php

安装LNMP平台相关软件

mariadb(数据库客户端软件)、mariadb-server(数据库服务器软件)、mariadb-devel(其他客户端软件的依赖包)、php(解释器)、php-fpm(进程管理器服务)、php-mysql(PHP的数据库扩展包)

1. 安装软件包

[root@centos7 ~]# yum -y install gcc openssl-devel pcre-devel   #安装依赖包
[root@centos7 ~]# tar -xf nginx-1.12.2.tar.gz
[root@centos7 ~]# cd nginx-1.12.2
[root@centos7 nginx-1.12.2]# ./configure   \
--with-http_ssl_module   \
--with-http_stub_status_module
[root@centos7 nginx-1.12.2]# make && make install
[root@centos7 ~]# yum -y install   mariadb   mariadb-server   mariadb-devel
[root@centos7 ~]# yum -y install   php        php-mysql        php-fpm

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

2. 启动服务(nginx、mariadb、php-fpm)

[root@centos7 ~]# /usr/local/nginx/sbin/nginx             #启动Nginx服务
[root@centos7 ~]# echo "/usr/local/nginx/sbin/nginx" >> /etc/rc.local  # 保证有运行权限 下次开机自启
[root@centos7 ~]# chmod +x /etc/rc.local
[root@centos7 ~]# ss -utnlp | grep :80                    #查看端口信息[root@centos7 ~]# systemctl start   mariadb               #启动mariadb服务器
[root@centos7 ~]# systemctl enable  mariadb                #设置开机自启 
[root@centos7 ~]# systemctl start  php-fpm               #启动php-fpm服务
[root@centos7 ~]# systemctl enable php-fpm                #设置开机自启 

在这里插入图片描述

启动服务出错 检查配置文件
/usr/local/nginx/sbin/nginx -t
在这里插入图片描述

3. 修改Nginx配置文件,实现动静分离

修改配置文件,通过两个location实现动静分离,一个location匹配动态页面,一个location匹配其他所有页面
注意修改默认首页为index.php

vim +65 /usr/local/nginx/conf/nginx.conf # 可以直接定位到65行 

在这里插入图片描述

# 重新加载配置
/usr/local/nginx/sbin/nginx -s reload

4. 配置数据库

为网站提前创建一个数据库、添加账户并设置该账户有数据库访问权限

[root@centos7 ~]# mysql
#创建数据库,数据库名称为wordpress,该数据库支持中文(character set utf8mb4)
MariaDB [(none)]> create database wordpress character set utf8mb4; 
MariaDB [(none)]> grant all on wordpress.* to wordpress@'localhost' identified by 'wordpress';
#语法格式:grant 权限 on 数据库名.表名  to 用户名@客户端主机 identified by 密码
#创建用户并授权,用户名为wordpress,该用户对wordpress数据库下的所有表有所有权限
#wordpress用户的密码是wordpress,授权该用户可以从localhost主机登录数据库服务器
#all代表所有权限(wordpress用户可以对wordpress数据库中所有表有所有权限)
#wordpress.*代表wordpress数据库中的所有表
MariaDB [(none)]> grant all on wordpress.* to wordpress@'192.168.2.11' identified by 'wordpress';
MariaDB [(none)]> flush privileges;
#刷新权限
MariaDB [(none)]> exit
#退出数据库

验证是否成功
看看是否可以使用新创建的账户登录数据库服务器:

mysql -uwordpress -pwordpress -h 192.168.2.11 wordpress
#-u指定数据库账户名称,-p指定数据库账户的密码,-h指定需要远程数据库的IP地址
#最后的wordpress为数据库的名称

上线wordpress代码 (测试搭建的LNMP环境是否可以使用)

软件使用php语言编写,创建的网站信息是存储在数据库里面的。
wordpress的工作页面是通过网站服务显示的。

1. 上线php动态网站代码

[root@centos7 ~]# yum install -y unzip 
[root@centos7~]# unzip wordpress.zip
[root@centos7~]# cd wordpress
[root@centos7 wordpress]# tar -xf wordpress-5.0.3-zh_CN.tar.gz
[root@centos7 wordpress]# cp -r  wordpress/*  /usr/local/nginx/html/
[root@centos7 wordpress]# chown -R apache.apache  /usr/local/nginx/html/ # -R 递归修改

动态网站运行过程中,php脚本需要对网站目录有读写权限,而php-fpm默认启动用户为apache

2. 初始化网站配置(使用客户端访问web服务器IP)

firefox http://192.168.2.11/

修改配置文件 加首页名
在这里插入图片描述
服务器会自动进入config配置页面 效果如下:
在这里插入图片描述
开发人员在写代码的时候并不知道未来数据库服务器的IP、端口、数据库名称、账户等信息,该配置页面主要的作用就是动态配置数据库信息,根据前面步骤配置的数据库信息填空即可:
在这里插入图片描述
点击提交即可完成数据库的初始化工作,php动态脚本会自动在wordpress数据库中创建若干数据表,后期网站的数据都会写入对并的数据表中。
在这里插入图片描述
第一次使用Wordpress需要给你的网站设置基本信息,如网站标题、网站管理员账户与密码等信息,配置完成后点击安装wordpress即可:
在这里插入图片描述

网站后台管理

1. 访问数据库

> mysql
> show database;
> use wordpress;
# 看已有的表
show tables; 

在这里插入图片描述

2. 查看配置信息

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/294715.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于Java Web的“萌宠小知识”网站设计与实现论文

摘 要 如今社会上各行各业,都喜欢用自己行业的专属软件工作,互联网发展到这个时候,人们已经发现离不开了互联网。新技术的产生,往往能解决一些老技术的弊端问题。因为传统萌宠小知识信息管理难度大,容错率低&#xff…

用户认证篇

文章目录 1. 如何生成用户认证token令牌1.1 相关表1.2 生成令牌逻辑1.3 最终结果 1. 如何生成用户认证token令牌 1.1 相关表 分为访问令牌access_token和刷新令牌refresh_token, 分别保存在system_oauth2_access_token和system_oauth2_refresh_token。 访问令牌设置的过期时间…

亚马逊测评的重要性和技术选择

亚马逊测评是指卖家通过各种途径,如测评平台、社区、红人等,联系到亚马逊的买家,让其对卖家的产品进行评价和留下真实的综合评价,这对于跨境电商卖家来说非常重要,因为亚马逊的排名和转化率很大程度上取决于产品的评价…

【NI-RIO入门】使用其他文本语言开发CompactRIO

1.FPGA 接口Python API Getting Started — FPGA Interface Python API 19.0.0 documentation 2.FPGA接口C API FPGA 接口 C API 是用于 NI 可重配置 I/O (RIO) 硬件(例如 NI CompactRIO、NI Single-Board RIO、NI 以太网 RIO、NI FlexRIO、NI R 系列多功能 RIO 和…

前端页面资源放入oss 对象存储问题

1.需求 当我们做的是微信公众号的时候 需要微信重定向登录 在此时 我们需要在微信后台配置重定向域名 但是微信后台只能配置三个 如果有很多H5 公众号重定向登录的需求 我们该怎么做呢 2.解决 肯定我们需要配置 首页的 一般前端打包项目 都是由index.html 当然 我们实现 都是…

【Unity】入门

文章目录 概述常用组件各类文件基础知识创建工程工程目录介绍五个窗口面板创建代码和场景 脚本与编程鼠标的输入键盘的输入代码来操作组件获取物体API资源的使用API定时调用与线程向量的基本运算预制体与实例 物理系统与组件案例实操作快捷键来源 Unity已广泛运用到各个领域&am…

vue3 + TypeScript使用国际化

vue3 TypeScript使用国际化 本文使用了 Vite 构建工具创建的vue3项目Vite 支持使用特殊的 import.meta.glob 函数从文件系统导入多个模块Vite 官方中文文档当然如果你的vue3项目未使用vite,你也可以为你的旧项目提提速,安装vite ,安装方法在上一个博客…

Spring Cloud Gateway官方文档学习笔记

Spring Cloud Gateway官方文档学习笔记 前言 基础知识:API网关基础知识总结面试题:Spring Cloud Gateway夺命连环10问? 何为网关? 什么是网关?理解成火车站的检票口,统一 检票 网关优点: 统…

一个简化版的IPD产品开发各阶段的流程

IPD好不好?当然好!IPD适不适合我们行业?当然适合,可以说,任何一个行业都可以借鉴IPD的理念和实践提高产品开发的效率,提升客户满意度。IPD复不复杂?当然复杂! 关于IPD的框架和体系&…

GrayLog日志平台的基本使用-docker容器日志接入

1、/etc/docker/daemon.json中加入如下配置并重启服务 [rootlocalhost src]# cat /etc/docker/daemon.json { "registry-mirrors": ["https://dhq9bx4f.mirror.aliyuncs.com"], "log-driver": "gelf", "log-opts":…

【ubuntu 22.04】安装vscode并配置正常访问应用商店

注意:要去vscode官网下载deb安装包,在软件商店下载的版本不支持输入中文 在ubuntu下用火狐浏览器无法访问vscode官网,此时可以手动进行DNS解析,打开DNS在线查询工具,解析以下主机地址(复制最后一个IP地址&a…

二维码智慧门牌管理系统升级:强化用户管理合规性

文章目录 前言一、功能优化和多层级管理二、强大的合规性与权限配置三、提升管理效率与系统安全性 前言 随着科技迅速发展,二维码智慧门牌管理系统已经成为各组织机构首选的入口,提高了信息管理效率并确保了数据安全。然而,用户需求变化和法…