麒麟操作系统服务架构保姆级教程(七)Nginx+PHP+Mysql部署服务

上边几篇文章已经交过大家二进制部署nginx和php,现在咱们打通nginx和php,mysql和php,开始部署服务,学会部署服务之后就可以开始学习负载均衡啦,话不多说,咱们直接开始~~~

目录

一、.nginx部署

二、安装PHP服务

三、安装数据库

四、打通Nginx和PHP的联通

五、打通Mysql和PHP的连接

​编辑

六、部署业务

七、统一服务的启动用户


💬欢迎交流:在学习过程中如果你有任何疑问或想法,欢迎在评论区留言,我们可以共同探讨学习的内容。你的支持是我持续创作的动力!

👍点赞、收藏与推荐:如果你觉得这篇文章对你有所帮助,请不要忘记点赞、收藏,并分享给更多的小伙伴!你们的鼓励是我不断进步的源泉!

🚀推广给更多人:如果你认为这篇文章对你有帮助,欢迎分享给更多对Linux感兴趣的朋友,让我们一起进步,共同提升!

一、.nginx部署

1、编译安装,参考之前的文章
https://blog.csdn.net/weixin_62408089/article/details/144616700?fromshare=blogdetail&sharetype=blogdetail&sharerId=144616700&sharerefer=PC&sharesource=weixin_62408089&sharefrom=from_link
2、yum安装
[root@web01 ~]#vim /etc/yum.repos.d/nginx.repo
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
​
yum -y install nginx

二、安装PHP服务

1、安装PHP
安装方式两种:
1).通过yum安装
[root@web01 ~]# yum -y install php php-bcmath php-cli php-common php-devel php-embedded php-fpm php-gd php-intl php-mbstring php-mysqlnd php-opcache php-pdo   php-process php-xml php-json
​
2).二进制编译安装,可以参考上篇文章
https://blog.csdn.net/weixin_62408089/article/details/144774614?fromshare=blogdetail&sharetype=blogdetail&sharerId=144774614&sharerefer=PC&sharesource=weixin_62408089&sharefrom=from_link
 
3).检查安装是否成功
[root@web01 ~]#rpm -qa|grep php|wc -l
16
​
3.启动PHP服务
[root@web01 ~]#systemctl start php-fpm
[root@web01 ~]#systemctl enable php-fpm
 Created symlink from /etc/systemd/system/multi-user.target.wants/php-fpm.service to 
/usr/lib/systemd/system/php-fpm.service.
4.查看端口
[root@web01 ~]#netstat -tnulp|grep 9000
 Active Internet connections (only servers)
 Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 127.0.0.1:9000          0.0.0.0:*               LISTEN      10443/php-fpm: mast 

三、安装数据库

1.安装Mariadb数据库 mysql--->Mariadb
mysql是常用的关系型数据库,MariaDB是MySQL的一个分支。由于Oracle收购了MySQL后,社区担心MySQL未来的开源性等诸多因素,因此Monty Widenius创建了MariaDB,语法和功能兼容:MariaDB的设计目标之一是与 MySQL兼容。在基本的SQL语法、存储过程、视图、索引等常见数据库功能上,MariaDB和MySQL非常相似。这意味着对于大多数用户来说,如果他们已经熟悉MySQL,切换到MariaDB在使用习惯上不会有太大的障碍这里我安装的是mariadb。
[root@web01 ~]#yum -y install mariadb-server
2.启动数据库
[root@web01 ~]#systemctl start mariadb
[root@web01 ~]#systemctl enable mariadb
3.检查端口3306
[root@web01 ~]#netstat -tnulp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 127.0.0.1:9000          0.0.0.0:*               LISTEN      10443/php-fpm: mast 
tcp        0      0 0.0.0.0:3306            0.0.0.0:*               LISTEN      10774/mysqld 
4.修改数据库密码
[root@web01 ~]#mysqladmin password 'qy123.com'
5.登录测试
[root@web01 ~]#mysql -uroot -p'qy123.com'
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 3
Server version: 5.5.68-MariaDB MariaDB Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>quit       # quit退出数据库
Bye

四、打通Nginx和PHP的联通

[root@web01 conf.d]#cat php.conf 
server {
        listen 80;
        server_name www.php.com;
        root /php;
        location / {
                index index.php index.html;
        }
        location ~ \.php$ {
                fastcgi_pass 127.0.0.1:9000;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                include fastcgi_params;
        }
}
创建/php目录
mkdir /php
写入代码
[root@web01 conf.d]#cat /php/index.php 
<?php
        phpinfo();
?>
windows做hosts解析
浏览器访问:  php.oldoy.com 显示php的信息

五、打通Mysql和PHP的连接

[root@web01 conf.d]#cat /php/mysql.php 
<?php
    $servername = "localhost";
    $username = "root";
    $password = "qy123.com";
    // 创建连接
    $conn = mysqli_connect($servername, $username, $password);
    // 检测连接
    if (!$conn) {
        die("Connection failed: " . mysqli_connect_error());
    }
    echo "php连接mysql成功";
 ?>
 <img style='width:100%;height:100%;' src=/477.png>
浏览器访问: http://www.php.com/mysql.php

六、部署业务

Nginx+MySQL+PHP部署完成
1.配置Nginx
[root@web01 conf.d]#cat wordpress.conf 
server {
    listen 80;
    server_name www.wp.com;
    root /code/wordpress;
    location / {
        index index.php index.html;
    }
    location ~ \.php$ {
        fastcgi_pass 127.0.0.1:9000;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }
}
语法检测
[root@web01 conf.d]#nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
重启
[root@web01 conf.d]#systemctl restart nginx
2.创建代码目录/code/wordpress
[root@web01 conf.d]#mkdir /code/wordpress
3.下载wordpress代码到代码目录
[root@web01 wordpress]#wget https://cn.wordpress.org/wordpress-5.8.7-zh_CN.tar.gz
 4.解压代码
[root@web01 wordpress]#tar xf wordpress-5.8.7-zh_CN.tar.gz 
[root@web01 wordpress]#ll
 total 15428
 drwxr-xr-x 5 1006 1006     
4096 May 17  2023 wordpress-rw-r--r-- 1 root root 15792879 May 17  2023 wordpress-5.8.7-zh_CN.tar.gz
[root@web01 wordpress]#mv wordpress/* .
 5.访问wordpres页面
windows做hosts解析
10.0.0.7   
www.wp.com
​
连接数据库创建wordpress库
[root@web01 wordpress]#mysql -uroot -pqy123.com -e "create database wordpress;"
[root@web01 wordpress]#mysql -uroot -pqy123.com -e "show databases;"
 +--------------------+
 | Database           |
 +--------------------+
 | information_schema |
 | mysql              |
 | performance_schema |
 | test               |
 | wordpress          |
 +--------------------+

 

回到服务器操作,将提示的内容写入文件中
[root@web01 wordpress]#vim wp-config.php
[root@web01 wordpress]#
输入信息

 

七、统一服务的启动用户

groupadd -g666 www
useradd -u666 -g666 -M -s /sbin/nologin www
修改nginx启动用户
[root@web01 ~]#head -3 /etc/nginx/nginx.conf
user  www;
修改后重启nginx
[root@web01 ~]#systemctl restart nginx
修改php启动用户
[root@web01 ~]#egrep '^user|^group' /etc/php-fpm.d/www.conf
user = www
group = www
[root@web01 ~]#systemctl restart php-fpm
检查是否修改成功
[root@web01 ~]#ps axu|grep nginx
root      11357  0.0  0.0  59444  1176 ?        Ss   12:04   0:00 nginx: master process /usr/sbin/nginx -c 
/etc/nginx/nginx.conf
www       11358  0.0  0.1  59940  2064 ?        S    12:04   0:00 nginx: worker process
root      11427  0.0  0.0 112808   968 pts/0    R+   12:06   0:00 grep --color=auto nginx
[root@web01 ~]#ps axu|grep php
root      11419  0.2  1.6 490152 32636 ?        Ss   12:05   0:00 php-fpm: master process (/etc/php
fpm.conf)
 www       11421  0.0  0.3 490152  7588 ?        S    12:05   0:00 php-fpm: pool www
 www       11422  0.0  0.3 490152  7588 ?        S    12:05   0:00 php-fpm: pool www
最后将/code/wordpress 属主属组修改为www
[root@web01 ~]#chown -R www.www /code/wordpress/
后台地址:
http://www.wp.com/wp-login.php
http://www.wp.com/

今天的单机LNMP告一段落了,接下来咱们学习架构拆分~~~


想成为大佬,就要从小白开始,从0开始,一点一点的积累,慢慢成长,明天你就是大佬!!想学习更多麒麟操作系统的知识,关注小屁,让你成为运维老鸟~~~~~ 

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

开源模型迎来颠覆性突破:DeepSeek-V3与Qwen2.5如何重塑AI格局?

不用再纠结选择哪个AI模型了&#xff01;chatTools 一站式提供o1推理模型、GPT4o、Claude和Gemini等多种选择&#xff0c;快来体验吧&#xff01; 在全球人工智能模型快速发展的浪潮中&#xff0c;开源模型正逐渐成为一股不可忽视的力量。近日&#xff0c;DeepSeek-V3和Qwen 2.…

【Java项目】基于SpringBoot的【新生宿舍管理系统】

【Java项目】基于SpringBoot的【新生宿舍管理系统】 技术简介&#xff1a;本系统使用采用B/S架构、Spring Boot框架、MYSQL数据库进行开发设计。 系统简介&#xff1a;管理员登录进入新生宿舍管理系统可以查看首页、个人中心、公告信息管理、院系管理、班级管理、学生管理、宿舍…

《learn_the_architecture_-_trustzone_for_aarch64_102418_0101_03_en》学习笔记

1.TrustZone是Arm A-profile架构中安全架构的名称。TrustZone首次在Armv6K中引入&#xff0c;Armv7-A和Armv8-A也支持。TrustZone提供两个执行环境&#xff0c;它们之间具有系统范围的硬件强制隔离。在Arm架构中&#xff0c;有两种安全状态&#xff1a;安全和非安全。在EL0、EL…

Excel | 空格分隔的行怎么导入excel?

准备工作&#xff1a;windows&#xff0c;一个记事本程序和微软的Excel软件。 打开记事本&#xff0c;选中所有内容&#xff0c;按CtrlA全选&#xff0c;然后复制(CtrlC)。 在Excel中&#xff0c;定位到你想粘贴的单元格&#xff0c;按CtrlV进行粘贴。粘贴后&#xff0c;你会在…

南京观海微电子----GH7009国宇测试盒使用

1. SPI接线 针对7009&#xff1a; 2. 国宇上位机代码准备 在主函数首尾两端加入IO2时序控制的代码、以及国语SPI有效位控制的代码&#xff08;请注意7009和其他700x使用的有效位控制不一致&#xff0c;需要用哪一款加入哪一行即可&#xff09;&#xff1a; 三、国宇SPI读的使…

Arduino Uno简介与使用方法

目录 一、Arduino Uno概述 1. 硬件特性 2. 开发环境 二、Arduino Uno的基本使用方法 1. 硬件连接 2. 软件编程 三、Arduino Uno编程基础 1. 基本语法 2. 常用函数 四、Arduino Uno应用举例 1. LED闪烁 2. 温度检测 3. 超声波测距 五、Arduino Uno的扩展与应用 1…

使用命令行管理git项目

# 初始化一个新的Git仓库 git init # 添加文件到暂存区 git add <file> # 提交暂存区的更改到仓库 git commit -m "commit message" # 查看当前仓库的状态 git status # 查看提交历史 git log # 查看文件的改动 git diff <file> # 创建一个新…

网络安全的学习与实践经验(附资料合集)

学习资源 在线学习平台&#xff1a; Hack This Site&#xff1a;提供从初学者到高级难度的挑战任务&#xff0c;适合练习各种网络安全技术。XCTF_OJ&#xff1a;由XCTF组委会开发的免费在线网络安全网站&#xff0c;提供丰富的培训材料和资源。SecurityTube&#xff1a;提供丰…

基于STM32的热带鱼缸控制系统的设计

文章目录 一、热带鱼缸控制系统1.题目要求2.思路3.电路仿真3.1 未仿真3.2 开始仿真&#xff0c;显示屏显示水温、浑浊度、光照强度等值3.3 当水温低于阈值&#xff0c;开启加热并声光报警3.4 当浑浊度高于阈值&#xff0c;开启自动换水并声光报警3.5 当光照低于阈值&#xff0c…

【DevOps】Jenkins项目发布

Jenkins项目发布 文章目录 Jenkins项目发布前言资源列表基础环境一、Jenkins发布静态网站1.1、项目介绍1.2、部署Web1.3、准备gitlab1.4、配置gitlab1.5、创建项目1.6、推送代码 二、Jenkins中创建gitlab凭据2.1、创建凭据2.2、在Jenkins中添加远程主机2.3、获取gitlab项目的UR…

SSM-SpringMVC

目录 “为什么要学 SpringMVC&#xff1f;它和 Servlet 是什么关系&#xff1f;” “什么是异步&#xff1f;为什么异步交互中常用 JSON 格式&#xff1f;异步请求和 JSON 如何配合&#xff1f;” 一、概述 SpringMVC主要负责 1 SpringMVC的常用组件 2 SpringMVC的工作流程…

基层医联体医院患者历史检验检查数据的快速Python编程分析

​​​​​​​ 一、引言 1.1 研究背景与意义 在当今数字化医疗时代,医疗数据呈爆炸式增长,涵盖患者的基本信息、病史、检验检查结果、治疗方案等各个维度。这些海量且复杂的数据蕴含着巨大价值,为精准医疗决策提供了关键依据。通过对患者历史检验检查数据的深入对比分析…

计算机网络基础(7)中科大郑铨老师笔记

应用层 目标&#xff1a;  网络应用的 原理&#xff1a;网络应用协议的概念和实现方面 传输层的服务模型 客户-服务器模式 对等模式(peerto-peer) 内容分发网络  网络应用的 实例&#xff1a;互联网流行的应用层协 议  HTTP  FTP  SMTP / POP3 / IMAP  DNS…

Fabric环境部署-Git和Node安装

一.安装Git&#xff08;v2.43.0&#xff09; Git 是一个开源的分布式版本管理系统&#xff08;也是全球最大的开源软件存储服务器&#xff09;&#xff0c;用于敏捷高效地处理任何或小或大的项目。搭建区块链需要使用Git&#xff0c;因为区块链的开发和部署需要使用版本控制工…

SAP MM物料管理模块常见BAPI函数清单

【SAP系统研究】 #SAP #MM #物料管理 #函数 #BAPI 1、物料主数据 BAPI_MATERIAL_SAVEDATA 创建/更改物料主数据 BAPI_MATERIAL_SAVEREPLICA 物料主数据视图扩充 BAPI_MATERIAL_EXISTENCECHECK 检查物料主数据是否存在 BAPI_MATERIAL_GETLIST 显示物料主数据明细 BAPI_MATERIALG…

Windows11安装Oracle11g以及plsqldev工具连接配置

文章目录 一、安装Oracle数据库软件二、配置数据库三、配置监听&#xff08;listener.ora&#xff09;四、本地网络服务名配置&#xff08;tnsnames.ora&#xff09;五、网络服务名配置以及监听文件路径六、plsqldev工具连接Oracle配置 一、安装Oracle数据库软件 点击“setup.…

unity学习6:unity的3D项目的基本界面和菜单

目录 1 unity界面的基本认识 1.1 file 文件 1.2 edit 编辑/操作 1.3 Assets 1.4 gameobject 游戏对象 1.5 组件 1.6 windows 2 这些部分之间的关系 2.1 关联1&#xff1a; Assets & Project 2.2 关联2&#xff1a;gameobject & component 2.3 关联3&#xf…

HTML5新特性|06 文本效果text-shadowword-wrap自定义字体

文本效果 1、CSS3包含多个新的文本特性 属性: text-shadow:水平阴影 垂直阴影 模糊距离 阴影颜色 word-wrap&#xff1a;用于指定当文本溢出其容器的边界时如何处理换行的问题 浏览器支持: Internet Explorer 10、Firefox、 Chrome、 Safari 以及Opera支持text-shadow属性…

【踩坑指南2.0 2025最新】Scala中如何在命令行传入参数以运行主函数

这个地方基本没有任何文档记录&#xff0c;在学习的过程中屡屡碰壁&#xff0c;因此记录一下这部分的内容&#xff0c;懒得看可以直接跳到总结看结论。 踩坑步骤 首先来看看书上让我们怎么写&#xff1a; //main.scala object Start {def main(args:Array[String]) {try {v…

【路径跟踪】PIDMPC

路径跟踪&#xff08;Path Tracking&#xff09;是指在实际行驶过程中&#xff0c;根据预先规划好的路径进行控制&#xff0c;能够沿着设定的路径行驶。常见的路径跟踪算法包括基于模型的控制方法&#xff08;如PID控制器&#xff09;、模型预测控制&#xff08;Model Predicti…