LNMP架构及应用部署

news2024/11/24 5:29:48

LNMP架构及应用部署

安装nginx

关闭防火墙和selinux

[root@localhost ~]#systemctl stop firewalld

[root@localhost ~]# setenforce 0

[root@localhost ~]# iptables -F 

安装依赖软件

[root@localhost ~]# mount /dev/cdrom /mnt     ---挂载光盘(先要创建yum仓库)

[root@localhost ~]# yum -y install pcre-devel zlib-devel 

创建管理nginx用户

[root@localhost ~]# useradd -M -s /sbin/nologin nginx

配置nginx

[root@localhost ~]# rz

[root@localhost ~]# tar xf nginx-1.16.0.tar.gz -C /usr/src

[root@localhost ~]# cd /usr/src/nginx-1.16.0/

[root@localhost nginx-1.16.0]#

配置nginx

[root@localhost nginx-1.16.0]# ./configure --prefix=/usr/local/nginx --with-http_stub_status_module --user=nginx    (#如果没启动成功,可能是缺少C环境安装gcc)

编译安装

[root@localhost nginx-1.16.0]# make && make install

优化Nginx命令

[root@localhost ~]# ln -s /usr/local/nginx/sbin/* /usr/local/sbin/

检测配置文件是否有错误

[root@localhost ~]# nginx -t

[root@localhost etc]# vim /etc/init.d/nginx ——进入nginx脚本

#!/bin/bash

#chkconfig:2345 99 20

# description: Nginx Server Control Script

PROG="/usr/local/nginx/sbin/nginx"

PIDF="/usr/local/nginx/logs/nginx.pid"

PROG_FPM="/usr/local/sbin/php-fpm"

PIDF_FPM="/usr/local/php5/var/run/php-fpm.pid"

case "$1" in

start)+

        $PROG

        $PROG_FPM

;;

stop)

        kill -s QUIT $(cat $PIDF)

        kill -s QUIT $(cat $PIDF_FPM)

;;

restart)

        $0 stop

        $0 start

;;

reload)

        kill -s HUP $(cat $PIDF)

;;

*)

        echo "Usage: $0 (start|stop|restart|reload)"

        exit 1

esac

exit 0

[root@localhost ~]# chmod +x /etc/init.d/nginx

[root@localhost ~]# chkconfig --add nginx

安装mysql数据库

[root@localhost conf]# yum -y install libaio

先查看有没有libaio依赖包

上传MySQL二进制安装包

[root@localhost ~]# tar xf mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz -C /usr/local

——解压MySQL

[root@localhost ~]# cd /usr/local/

[root@localhost local]# mv mysql-5.7.24-linux-glibc2.12-x86_64/ mysql ——改名字

[root@localhost local]# useradd -s /sbin/nologin mysql ——添加用户和组

[root@localhost local]# cd mysql/

[root@localhost mysql]# chown -R mysql:mysql ./ ——将当前目录下的用户和组都递归给入权限

[root@localhost ~]# /usr/local/mysql/bin/mysqld --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --initialize -----初始化数据库

[root@localhost mysql]# vim /etc/my.cnf ——进入主配置文件

[mysqld] (#替换原有的路径)

datadir=/usr/local/mysql/data

socket=/tmp/mysql.sock

[mysqld_safe](#替换原有的路径)

log-error=/usr/local/mysql/data/mysql.log

pid-file=/usr/local/mysql/data/mysql.pid

 

[root@localhost mysql]# ./support-files/mysql.server start ——重启服务

[root@localhost mysql]#  cp support-files/mysql.server /etc/init.d/mysqld ——将MySQL服务加入到系统服务当中

[root@localhost mysql]# chmod +x /etc/init.d/mysqld ——将脚本加入执行权限

[root@localhost ~]# chkconfig --add mysqld ——优化命令

[root@localhost ~]# systemctl start mysqld ——启动

[root@localhost ~]# ln -s /usr/local/mysql/bin/* /usr/bin/

[root@localhost ~]# mysqladmin -uroot -p'T;PNK1Odu:i<' password 123456 ——修改MySQL密码

[root@localhost ~]# mysql -uroot -p123456 ——登录MySQL

安装PHP

[root@localhost ~]# yum -y install gd libxml2-devel.x86_64 libjpeg-devel libpng-devel

——查看是否安装依赖包

上传PHP安装包

[root@localhost ~]# tar xf php-5.6.39.tar.gz -C /usr/src ——解压安装包

[root@localhost ~]# cd /usr/src/php-5.6.39/ ——进入到解压路径

[root@localhost php-5.6.39]# ./configure --prefix=/usr/local/php5 --with-gd --with-zlib --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-config-file-path=/usr/local/php5 --enable-mbstring --enable-fpm --with-jbeg-dir=/usr/lib && make && make install ——进行安装

[root@localhost php-5.6.39]# cp php.ini-production /usr/local/php5/php.ini

——准备配置文件

[root@localhost php-5.6.39]# ln -s /usr/local/php5/bin/* /usr/local/bin/

[root@localhost php-5.6.39]# ln -s /usr/local/php5/sbin/* /usr/local/sbin/ ——命令优化

上传zend -loader安装包

[root@localhost ~]# tar xf zend-loader-php5.6-linux-x86_64_update1.tar.gz ——解压

[root@localhost ~]# cd zend-loader-php5.6-linux-x86_64/ 进入解压路径

[root@localhost zend-loader-php5.6-linux-x86_64]#

cp ZendGuardLoader.so /usr/local/php5/lib/php ----复制

[root@localhost zend-loader-php5.6-linux-x86_64]# vim /usr/local/php5/php.ini 

——进入php配置文件

 

zend_extension=/usr/local/php5/lib/php/ZendGuardLoader.so

zend_loader.enable=1                         -----------写入两行

[root@localhost zend-loader-php5.6-linux-x86_64]# cd /usr/local/php5/etc/

[root@localhost etc]# ls

pear.conf  php-fpm.conf.default

[root@localhost etc]# mv php-fpm.conf.default php-fpm.conf ——调整

[root@localhost etc]# vim php-fpm.conf ——进入主配置文件

149 user = php

150 group = php

241 pm.max_children = 50

246 pm.start_servers = 20

251 pm.min_spare_servers = 5

256 pm.max_spare_servers = 35

[root@localhost etc]# useradd -M -s /sbin/nologin php ——创建程序用户

[root@localhost etc]# /usr/local/sbin/php-fpm ——启动

[root@localhost html]# vim /usr/local/nginx/conf/nginx.conf ——进入主配置文件

 

添加一个location

location ~ \.php$ {

            root html;

            fastcgi_pass 127.0.0.1:9000;

            fastcgi_index index.php;

            include fastcgi.conf;

        }

 

第一个人location也要加一个index.php

[root@localhost html]# systemctl restart nginx ——重启

[root@localhost html]# vim /usr/local/nginx/html/php.php ——编写测试文件

<?php

phpinfo();

?>

客户端浏览http://192.168.200.112/php.php

 

[root@localhost html]# vim /usr/local/nginx/html/mysql.php ——连接mysql

<?php

$link=mysqli_connect('localhost','root','123456');

if($link) echo"<h1>陈佳峰没u有小jj</h1>";

mysqli_close();

?>

访问:http://192.168.200.112/mysql.php

 

   

LNMP平台中部署WEB应用-1

  1. 解压

[root@localhost ~]# unzip SKYUC.v3.4.2.SOURCE.zip

[root@localhost ~]# cd SKYUC.v3.4.2.SOURCE

[root@localhost SKYUC.v3.4.2.SOURCE]# rm -rf /usr/local/nginx/html/*

[root@localhost SKYUC.v3.4.2.SOURCE]# cp -rf wwwroot/ /usr/local/nginx/html/

[root@localhost SKYUC.v3.4.2.SOURCE]# cd /usr/local/nginx/html 

  1. 属主

[root@localhost html]#cd wwwroot

[root@localhost wwwroot]# chown -R php:php admincp/  data/  templates/  upload/ #给这四个目录属主属组全部更改为php

3.创建数据库和授权用户 

 [root@localhost html]# mysql -u root -p123456

  mysql> create database skyuc;

  mysql> grant all on skyuc.* to skyuc@localhost identified by '123';

  mysql> flush privileges;

4.访问

IE --> http://192.168.100.20/wwwroot/index.php

 

 

 

 

备注:配置完成删除目录下的install目录,防止下次登录清除网站界面信息

[root@localhost html]# mysql -u root -p123456

mysql> use skyuc;

mysql> show tables;

mysql> select * from skyuc_admin;

 

IE -->  http://192.168.100.20/wwwroot/admincp/index.php

 

LNMP平台中部署WEB应用-2

上传论坛软件包

[root@localhost ~]# unzip ComsenzDiscuz-DiscuzX-master.zip ——下载

[root@localhost ~]# cd DiscuzX/ ——进入到解压路径下

[root@localhost DiscuzX]# ls

[root@localhost DiscuzX]# mv upload/ /usr/local/nginx/html/bbs ——名为bbs

http://192.168.42.5/bbs/install/index.php ——浏览器访问

 

出现安装向导

 

出现问题

 

[root@localhost DiscuzX]# cd /usr/local/nginx/html/bbs/config/ ——进入此路径

[root@localhost config]# cp config_global_default.php config_globa.php

[root@localhost config]# cp config_ucenter_default.php config_ucenter.php ——将两个文件复制一份

[root@localhost config]# cd ../ ——还是到bbs路径下

[root@localhost bbs]# chmod -R 777 config/ data/ uc_client/ uc_server/ ——给权限

进行下一步安装

[root@localhost bbs]# mysql -uroot -p123456 ——进入mysql数据库

mysql> create database bbs; ——创建一个数据叫bbs

Query OK, 1 row affected (0.01 sec)

mysql> grant all on bbs.* to 'bbs'@'localhost' identified by '123456'; ——授权所有权限

Query OK, 0 rows affected, 1 warning (0.01 sec)

mysql> flush privileges; ——刷新授权表

Query OK, 0 rows affected (0.00 sec)

开始安装

192.168.1.51/bbs/index.php

访问时后面不用加bbs:

[root@localhost bbs]# vim /usr/local/nginx/conf/nginx.conf ——进入nginx主配置文件

HTML后加上bbs

 

 

[root@localhost bbs]# nginx -s reload ——重新加载

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SQL-每日一题【511.游戏玩法分析Ⅰ】

题目 活动表 Activity&#xff1a; 写一条 SQL 查询语句获取每位玩家 第一次登陆平台的日期。 查询结果的格式如下所示&#xff1a; 解题思路 前置知识 MIN&#xff08;&#xff09;函数 MIN 函数返回一列中的最小值。NULL 值不包括在计算中。 SQL MIN() 语法 SELECT MIN(co…

2023WAIC世界人工智能大会

“在卢浮宫看蒙娜丽莎的感觉” 图源自朋友 附言&#xff1a; 前几天在想能不能为AI文本生成设计一种AI独有的字体&#xff0c;结果今天看到这个新闻&#xff1a;阿里巴巴全新可变字体发布&#xff0c;免费可商用。

Java微服务金融项目智牛股-基础知识三(Restful、HATEOAS、GRPC、SEATA )

Restful定义 Restful是一种软件架构与设计风格&#xff0c; 并非一套标准&#xff0c; 只提供了一些原则与约定条件。REST提供了一组架构约束&#xff0c;当作为一个整体来应⽤用时&#xff0c;强调组件交互的可伸缩性。接⼝口的通⽤用性、组件的独⽴立部署、以及⽤用来减少交…

SSMP整合案例(13) 在界面中实现编辑操作

做完我们的删除 那肯定是做编辑 其实编辑和添加基本是一个东西 我们打开 src下的 components 下的bookFillIn.vue 组件 之前我们做添加的这个弹窗组件 加一个函数叫 editBook 接收一个参数 id 内容先不管 然后 在data中 加多一个键 id 值 null 然后 将sensor 展开弹窗函数 更…

C# PaddleInference 文字检测(只检测不识别)

效果 项目 Demo下载 代码 using OpenCvSharp.Extensions; using OpenCvSharp; using Sdcb.PaddleInference.Native; using Sdcb.PaddleInference; using System; using System.Collections.Generic; using System.Data; using System.Drawing; using System.Linq; using Syst…

【完整代码】电商购物系统Python,基于Flask框架实现

一、介绍 电商购物系统Python&#xff0c;基于Flask框架实现。 实现用户查看商品、购买商品、添加购物车、商城订单、编辑个人信息、点击喜欢不喜欢等、商品评论、登录注册、查看物流信息等功能。 实现商家发布商品、查看销售列表、管理商品、物流信息更新、个人信息修改等功能…

腾讯游戏服务器外包二面

1.基础问题 2.网络协议 3.数据结构 3.1二叉树的前序遍历 3.2实现二叉树的前序遍历 https://www.nowcoder.com/practice/5e2135f4d2b14eb8a5b06fab4c938635?tpId295&tqId2291302&ru/exam/oj&qru/ta/format-top101/question-ranking&sourceUrl%2Fexam%2Foj…

如何查找电脑蓝屏原因之详解

一、电脑蓝屏存储位置 电脑蓝屏日志是一种非常常见的错误提示&#xff0c;它经常发生在Windows操作系统中。当Windows系统遇到无法处理的错误时&#xff0c;会自动将错误信息记录在蓝屏日志文件中。这些日志文件通常存储在C盘的目录下windows文件中的Minidump文件夹中。 以dmp格…

Openlayers实战:绘制矩形,正方形,正六边形

Openlayers地图中,绘制图形是非常重要的一个功能。Openlayers主要使用draw类来绘制图形,在实际项目中有时候会绘制矩形和正多边形。 下面的示例是绘制矩形,正方形,正多边形。 效果图 源代码 /* * @Author: 大剑师兰特(xiaozhuanlan),还是大剑师兰特(CSDN) * @此源代…

基于Python爬虫+KNN数字验证码识别系统——机器学习算法应用(含全部工程源码)+训练数据集

目录 前言总体设计系统整体结构图系统流程图 运行环境Python 环境 模块实现1. 数据爬取2. 去噪与分割3. 模型训练及保存4. 准确率验证 系统测试工程源代码下载其它资料下载 前言 本项目利用Python爬虫技术&#xff0c;通过网络爬取验证码图片&#xff0c;并通过一系列的处理步…

QT5项目程序打包成可执行exe程序(绿色版)

一、QT在release模式下编译生成.exe 二、然后新建一个空白文件夹package&#xff0c;再将在release模式下生成的.exe文件复制到新建的文件夹中package。 三、打开QT5的命令行&#xff08;选择项目所使用的的环境&#xff09; 查找项目使用环境 打开命令行 四、在命令行输入命令…

马斯克:未来会涌现大量机器人,与人类比例有望超过1比1

在世界人工智能大会上&#xff0c;特斯拉的马斯克通过网络发表了视频演讲&#xff0c;涵盖了特斯拉人形机器人Optimus、自动驾驶和人工智能等话题。他赞扬了中国的AI产业&#xff0c;并表示中国在决心和实施方面非常出色&#xff0c;包括AI产业发展在内。 特斯拉的人型机器人目…

数学美学:探索“既不是最小值也不是最大值”的魅力

本篇博客会讲解力扣“2733. 既不是最小值也不是最大值”的解题思路&#xff0c;这是题目链接。 本题的思路是&#xff1a; 若数组只有2个元素&#xff0c;显然任意一个元素不是最小值就是最大值。若数组有3个以上的元素&#xff0c;由于提示中的第3点&#xff1a;数组中的所有…

中国首家外资独资期货公司,摩根大通期货持仓龙虎榜的持仓动向和盈亏状况

摩根大通期货&#xff0c;为什么持仓量长期排在期货龙虎榜前列 摩根大通是一家全球领先的金融服务机构&#xff0c;拥有超过200年的历史&#xff0c;业务遍及全球100多个国家和地区。这个期货公司比较神秘&#xff0c;只有上海一个营业部&#xff0c;在业务方向上以机构客户为服…

YOLOv5、YOLOv8改进教程:7. 添加SK-Net注意力机制

论文地址:Selective Kernel NetworksGithub:https://github.com/implus/SKNet如果你是深度学习小白,阅读本文前建议先学习一下 📖《新手入门深度学习》如果你有一定基础,但是缺乏实战经验,可通过 📖《深度学习100例》 补齐基础另外,我们正在通过 🔥365天深度学习训…

ATM模拟-管理员登录用户查询

项目来源&#xff1a;新星计划2023【JavaWeb实现ATM机存取款项目实战】 学习方向报名入口-CSDN社区 目录 管理员登录 管理员登录逻辑 管理员登录主程序 功能实现 代码如下&#xff1a; 用户信息封装 实现功能 代码实现&#xff1a; 业务层代码具体实现 功能实现 业…

linux查看内存总结

参考博客&#xff1a; https://www.atlantic.net/vps-hosting/find-top-10-running-processes-by-memory-and-cpu-usage/ 最简单的命令 free -g 查看还有多少可用的内存 但是有的时候这个提供的信息实在是太少了&#xff0c;例如我今天发现服务器上可用的内存只有50G, 我想知…

第2章 SSD主控和全闪存阵列

通过第一章可知&#xff0c;SSD主要由两大模块组成&#xff1a;主控和闪存介质。其中&#xff0c;主控的作用包括&#xff1a; &#xff08;1&#xff09;实现标准主机接口与主机通信&#xff1b; &#xff08;2&#xff09;实现与闪存的通信&#xff1b; &#xff08;1&#x…

算法与数据结构-队列

文章目录 什么是队列队列和栈的区别 队列的类型顺序队列链式队列循环队列阻塞队列并发队列 总结 什么是队列 队列跟栈一样&#xff0c;也是一种操作受限的线性表数据结构。不过&#xff0c;队列是先进者先出。 队列和栈的区别 栈只支持两个基本操作&#xff1a;入栈 push()和出…

【Kafka】Kafka consumer lag 为负数

前言 最近对Kafka 集群部署了 Kafka_exporter 监控&#xff0c;并集成了 granfana 图标展示。 发现 Consumer Group Lag 有时候为负数。 于是进行一番查询&#xff0c;并总结整理下。 具体情形 从下图可以看出&#xff0c;consumer group 值有时候出现负数的情况。 具体原…