小白爱折腾·其四:Linux部署Lnmp+PHPMyadmin环境
yuyutoo 2024-10-13 00:42 7 浏览 0 评论
【写在前面】
很久没有更新这一系列的文章了,最近应工作要求部署一套在线学习系统,在官方文档只提到Windows平台部署的情况下,经过漫长乏味的摸索,终于实现在Linux(Debian9)环境下部署。这篇文章是整个部署工作的前置部分,完工后的现在趁着整理笔记的功夫写下这篇文章,以备不时之需。
【系统环境】
Debian9+(Nginx+MariaDB10.1+PHP7.0+PHPMyadmin4.6.6)
括号内是本篇要部署的部分
【通用操作】
在整个部署过程中,涉及Nginx、PHP、MariaDB配置更改的操作,都建议重启一次相关服务:
service nginx restart
service php7.0-fpm restart
service mysql restart
【部署过程】
更新Debian系统(安装源)
apt update
安装Nginx
apt-get -y install nginx
对Nginx进行初步配置(以适配后期PHP应用)
编辑/etc/nginx/sites-available/default文件,如下图:
nginx额外配置(可选)
编辑/etc/nginx/nginx.conf文件
在http项下增加 client_max_body_size 10m;
安装PHP常用模块(Debian9默认提供的一般是7.0版本,这里跟随默认)
apt install php-fpm php-opcache php-cli php-gd php-curl php-mysql
PHP额外配置(可选)
编辑/etc/php/7.0/fpm/php.ini文件
将upload_max_filesize 改为20M
安装MariaDB(普通安装并不会提示设置root密码,但后续装PHPMyadmin时要用)
apt -y install mariadb-server
安全安装(数据库root密码自定,具体选项配置按各自需求)
mysql_secure_installation
安全安装中,除了设定root密码外,其他选项都选N(否),最后一个生效选项选Y(是)
部署到这里,Lnmp环境已经搭建完成,下面就要进行PHPMyadmin的安装与配置。
安装PHPMyadmin
apt install phpmyadmin
这里多说一句,关于PHPMyadmin的安装除了apt方法外,还可以用官网压缩包解压的方法进行。无论哪种方式都要注意版本问题,因为高版本需要PHP7.x以上才能支持,据PHPMyadmin官网说明,PHPMyadmin5.0以前的版本(4.4-4.97)都可以适配PHP7.0,因此这里选择PHP7.0打底加上apt install的安装方式。
初始网络配置选择,Apache和Lighthttp都不选,按Tab跳至OK回车
是否使用dbconfig-common配置应用程序数据库 YES
为PHPMyadmin MySQL用户定义新密码 留空跳至OK回车
将PHPMyadmin链接至Nginx网站根目录(/var/www/html),相当于创建快捷方式
ln -s /usr/share/phpmyadmin /var/www/html
数据库相关配置(命令行状态下,非PHPMyadmin)
进入MariaDB
mysql –uroot -p
更改登录认证方式(密码认证)
use mysql; #使用MySQL数据库
update user set plugin='mysql_native_password' where user='root'; #root用户认证方式更改
flush privileges; #刷新配置
select user, plugin from mysql.user; #查看用户认证方式,下图为修改后状态
exit #退出MariaDB
PHPMyadmin相关配置
编辑/usr/share/phpmyadmin/config.inc.php文件,如下图:
配置完毕后,务必重启Nginx、PHP、MariaDB相关服务,然后访问站点即可访问PHPMyadmin
(域名或IP)/phpmyadmin
界面如下图,可以用root和root密码登录,因为Debian默认系统root用户可以使用数据库,因此初次安装省略了配置数据库root密码的步骤,如果不进行认证方式更改,登录PHPMyadmin时将出现Acess Denied的错误(就算用对了数据库root用户和密码)
以上~
相关推荐
- 自卑的人容易患抑郁症吗?(自卑会导致抑郁吗)
-
Filephoto[Photo/IC]Lowself-esteemmakesusfeelbadaboutourselves.Butdidyouknowthatovert...
- 中考典型同(近)义词组(同义词考题)
-
中考典型同(近)义词组...
- BroadcastReceiver的原理和使用(broadcast-suppression)
-
一、使用中注意的几点1.动态注册、静态注册的优先级在AndroidManifest.xml中静态注册的receiver比在代码中用registerReceiver动态注册的优先级要低。发送方在send...
- Arduino通过串口透传ESP 13板与java程序交互
-
ESP13---是一个无线板子,配置通过热点通信Arduino通过串口透传ESP13板与java程序交互...
- zookeeper的Leader选举源码解析(zookeeper角色选举角色包括)
-
作者:京东物流梁吉超zookeeper是一个分布式服务框架,主要解决分布式应用中常见的多种数据问题,例如集群管理,状态同步等。为解决这些问题zookeeper需要Leader选举进行保障数据的强一致...
- 接待外国人英文口语(接待外国友人的英语口语对话)
-
接待外国人英文口语询问访客身份: MayIhaveyourname,please? 请问您贵姓? Whatcompanyareyoufrom? 您是哪个公司的? Could...
- 一文深入理解AP架构Nacos注册原理
-
Nacos简介Nacos是一款阿里巴巴开源用于管理分布式微服务的中间件,能够帮助开发人员快速实现动态服务发现、服务配置、服务元数据及流量管理等。这篇文章主要剖析一下Nacos作为注册中心时其服务注册与...
- Android面试宝典之终极大招(android面试及答案)
-
以下内容来自兆隆IT云学院就业部,根据多年成功就业服务经验,以及职业素养课程部分内容,归纳总结:18.请描述一下Intent和IntentFilter。Android中通过Intent...
- 除了Crontab,Swoole Timer也可以实现定时任务的
-
一般的定时器是怎么实现的呢?我总结如下:1.使用Crontab工具,写一个shell脚本,在脚本中调用PHP文件,然后定期执行该脚本;2.ignore_user_abort()和set_time_li...
- Spark源码阅读:DataFrame.collect 作业提交流程思维导图
-
本文分为两个部分:作业提交流程思维导图关键函数列表作业提交流程思维导图...
- 使用Xamarin和Visual Studio开发Android可穿戴设备应用
-
搭建开发环境我们需要做的第一件事情是安装必要的工具。因此,你需要首先安装VisualStudio。如果您使用的是VisualStudio2010,2012或2013,那么请确保它是一个专业版本或...
- Android开发者必知的5个开源库(android 开发相关源码精编解析)
-
过去的时间里,Android开发逐步走向成熟,一个个与Android相关的开发工具也层出不穷。不过,在面对各种新鲜事物时,不要忘了那些我们每天使用的大量开源库。在这里,向大家介绍的就是,在这个任劳任怨...
- Android事件总线还能怎么玩?(android实现事件处理的步骤)
-
顾名思义,AndroidEventBus是一个Android平台的事件总线框架,它简化了Activity、Fragment、Service等组件之间的交互,很大程度上降低了它们之间的耦合,使我们的代码...
- Android 开发中文引导-应用小部件
-
应用小部件是可以嵌入其它应用(例如主屏幕)并收到定期更新的微型应用视图。这些视图在用户界面中被叫做小部件,并可以用应用小部件提供者发布。可以容纳其他应用部件的应用组件叫做应用部件的宿主(1)。下面的截...
你 发表评论:
欢迎- 一周热门
-
-
前端面试:iframe 的优缺点? iframe有那些缺点
-
带斜线的表头制作好了,如何填充内容?这几种方法你更喜欢哪个?
-
漫学笔记之PHP.ini常用的配置信息
-
推荐7个模板代码和其他游戏源码下载的网址
-
其实模版网站在开发工作中很重要,推荐几个参考站给大家
-
[干货] JAVA - JVM - 2 内存两分 [干货]+java+-+jvm+-+2+内存两分吗
-
正在学习使用python搭建自动化测试框架?这个系统包你可能会用到
-
织梦(Dedecms)建站教程 织梦建站详细步骤
-
【开源分享】2024PHP在线客服系统源码(搭建教程+终身使用)
-
2024PHP在线客服系统源码+完全开源 带详细搭建教程
-
- 最近发表
-
- 自卑的人容易患抑郁症吗?(自卑会导致抑郁吗)
- 中考典型同(近)义词组(同义词考题)
- WPF 消息传递简明教程(wpf messagebox.show)
- BroadcastReceiver的原理和使用(broadcast-suppression)
- Arduino通过串口透传ESP 13板与java程序交互
- zookeeper的Leader选举源码解析(zookeeper角色选举角色包括)
- 接待外国人英文口语(接待外国友人的英语口语对话)
- 一文深入理解AP架构Nacos注册原理
- Android面试宝典之终极大招(android面试及答案)
- 除了Crontab,Swoole Timer也可以实现定时任务的
- 标签列表
-
- mybatis plus (70)
- scheduledtask (71)
- css滚动条 (60)
- java学生成绩管理系统 (59)
- 结构体数组 (69)
- databasemetadata (64)
- javastatic (68)
- jsp实用教程 (53)
- fontawesome (57)
- widget开发 (57)
- vb net教程 (62)
- hibernate 教程 (63)
- case语句 (57)
- svn连接 (74)
- directoryindex (69)
- session timeout (58)
- textbox换行 (67)
- extension_dir (64)
- linearlayout (58)
- vba高级教程 (75)
- iframe用法 (58)
- sqlparameter (59)
- trim函数 (59)
- flex布局 (63)
- contextloaderlistener (56)