百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

Ubuntu和树莓派搭建LAMP环境+部署网页+安装MQTT

nanshan 2024-10-04 18:12 12 浏览 0 评论

文章目录

  • web环境第1步:安装Apache第2步:安装MySQL(Ubuntu)第2步:安装MySQL(Raspbian)第3步:安装PHP第4步:重新启动apache以使所有更改生效第5步:安装phpmyadmin网站部署放置页面测试是否能上传图片成功MQTT环境Mosquitto安装启动服务端异常情况
视频链接:www.bilibili.com/video/BV1XK411G7AW/
pictureViewer.zip下载链接:download.csdn.net/download/sxf1061700625/13113746

web环境

搭建Linux+Apache+MySQL+PHP环境。

第1步:安装Apache

Apache是一个免费开源软件,可运行世界上50%的Web服务器。

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install apache2
sudo /etc/init.d/apache2 restart

要检查是否安装了Apache,请将浏览器指向您服务器的IP地址(例如http://127.0.0.1)。

可以运行以下命令来显示你的服务器的IP地址:

ifconfig | grep inet | awk '{ print $2 }'

第2步:安装MySQL(Ubuntu)

MySQL是一个强大的数据库管理系统,用于组织和检索数据。

sudo apt-get install mysql-server mysql-client

查看端口:

sudo netstat -tap | grep mysql

用命令激活它:

sudo mysql_install_db

通过运行MySQL设置脚本完成:

sudo /usr/bin/mysql_secure_installation
Would you like to setup VALIDATE PASSWORD plugin? => y
Please enter 0 = LOW, 1 = MEDIUM and 2 = STRONG: 1 => 0
New password: => xxxxxxxx
Re-enter new password:  => xxxxxxxx
Remove anonymous users?: => y
Disallow root login remotely?: => y
Remove test database and access to it?: => y
Reload privilege tables now?: => y

第2步:安装MySQL(Raspbian)

sudo apt-get install mariadb-server mariadb-client

用命令激活它:

sudo mysql_install_db

启动服务

/usr/bin/mysqld_safe --datadir='/var/lib/mysql'
sudo service mysql start

通过运行MySQL设置脚本完成:

sudo /usr/bin/mysql_secure_installation
Enter current password for root (enter for none):
Set root password? [Y/n] y
Remove anonymous users? [Y/n] y
Disallow root login remotely? [Y/n] y
Remove test database and access to it? [Y/n] y
Reload privilege tables now? [Y/n] y

第3步:安装PHP

PHP是一种开源的Web脚本语言,广泛用于构建动态网页。

sudo apt install php7.2-mysql php7.2-curl php7.2-json php7.2-cgi php7.2 libapache2-mod-php7.2

测试PHP:

查看版本:
php --version

输出phpinfo:
sudo vim /var/www/html/phpinfo.php
写入如下内容:
<?php echo phpinfo();?>
浏览器输入:
http://127.0.0.1/phpinfo.php

第4步:重新启动apache以使所有更改生效

sudo service apache2 restart

第5步:安装phpmyadmin

sudo apt install php-mbstring php7.2-mbstring php-gettext -y
sudo systemctl restart apache2.service
sudo apt install phpmyadmin -y

安装过程中的选项:

  • 选择 Apache2 并点击确定
  • 选择 Yes来配置 phpMyAdmin 管理的数据库
  • 输入刚设置的数据库密码
  • 若报错,可以选择ignore

安装完成后需要将phpmyadmin的文件夹复制到www/html文件夹下进行管理

sudo cp -Rf /usr/share/phpmyadmin /var/www/html/

打开浏览器并输入http://127.0.0.1/phpmyadmin

输入用户名、密码后登陆

网站部署

放置页面

pictureViewer文件夹整个放到/var/www/html/路径下:

复制:sudo cp -r pictureViewer /var/www/html
或
移动:sudo mv pictureViewer /var/www/html

修改权限:

sudo chmod 777 /var/www/html/pictureViewer/*

将文件夹名pictureViewer修改为MagicMirror

sudo mv /var/www/html/pictureViewer /var/www/html/MagicMirror

浏览器输入http://127.0.0.1/MagicMirror即可

测试是否能上传图片成功

打开并修改文件夹下的testUpload.py:

vim /var/www/html/MagicMirror/testUpload.py
url = 'http://127.0.0.1/MagicMirror/upload_file.php'

运行Python:

cd /var/www/html/MagicMirror/
python3 testUpload.py

若提示缺少库,则先安装:

pip3 install requests

上传成功后,刷新浏览器界面,会多一张图片。

MQTT环境

Eclipse Mosquitto是一个开源消息代理,实现了MQTT协议版本3.1和3.1.1。

Mosquitto安装

添加存储库(Raspbian可跳过):

sudo apt-add-repository ppa:mosquitto-dev/mosquitto-ppa

更新软件包:

sudo apt-get update

安装:

sudo apt-get install mosquitto -y

安装命令行客户端:

sudo apt-get install mosquitto-clients -y

默认情况下,Ubuntu将在安装后启动Mosquitto服务。

在新终端中,使用mosquitto_sub订阅测试主题:

mosquitto_sub -h localhost -t test

新开一个其他终端并发布消息:

mosquitto_pub -h localhost -t test -m "hello world"

启动服务端

#-c:指定特定配置文件启动
#-d:后台运行 
mosquitto -c /etc/mosquitto/mosquitto.conf -d

异常情况

如果遇到Unable to acquire the dpkg frontend lock这个问题

首先检查是否在运行apt,apt-get相关的进程:

ps aux | grep -i apt

如果存在与apt相关的正在运行的进程,kill掉进程:

sudo kill -9 <process id>

继续上一次的配置:

sudo dpkg --configure -a

或者直接简单粗暴的:

sudo killall apt apt-get 

之后可以新的apt操作

相关推荐

详解 HTTPS、TLS、SSL、HTTP区别和关系

一、什么是HTTPS、TLS、SSLHTTPS,也称作HTTPoverTLS。TLS的前身是SSL,TLS1.0通常被标示为SSL3.1,TLS1.1为SSL3.2,TLS1.2为SSL...

锐安信SSL证书自动化运维系统:灵活管理SSL/TLS证书全生命周期

点击上方关注“锐成云分销”,云建站解决方案专家!域名、SSL证书、DNS、主机一站选齐在SSL/TLS证书的生命周期管理中,证书的各种操作方式是基础且核心的部分之一,更是保障用户数据传输加密的关键。这...

宝塔免费的 SSL/TLS 证书如何续签

申请之前,请确保域名已解析,如未解析会导致审核失败(包括根域名)宝塔SSL申请的是免费版TrustAsiaDVSSLCA-G5证书,仅支持单个域名申请有效期1年,不支持续签,到期后需要重新申...

HTTPS、HTTP、TLS/SSL工作及握手原理、PKI/CA密钥体系

一、HTTPS与HTTP介绍二、TLS/SSL工作原理三、TSL/SSL握手过程四、HTTPS性能优化五、PKI体系一、HTTPS与HTTP介绍1.Https(SecureHypetextTran...

什么是SSL证书卸载 SSL证书卸载有什么作用

SSL证书是数字证书的一种,安装部署的话可以对网站起到身份验证和数据加密的作用。网站部署SSL证书,相对就必然会有SSL证书卸载,那么SSL证书卸载是什么呢?SSL证书卸载有什么作用?随着SSL通信量...

让SSL/TLS协议流行起来:深度解读SSL/TLS实现1

一前言SSL/TLS协议是网络安全通信的重要基石,本系列将简单介绍SSL/TLS协议,主要关注SSL/TLS协议的安全性,特别是SSL规范的正确实现。本系列的文章大体分为3个部分:SSL/TLS协...

苹果、谷歌、微软等一致同意!SSL/TLS证书最长有效期锐减至47天

快科技4月14日消息,苹果此前向CA/B论坛(负责管理SSL/TLS证书的行业组织)提议,将所有证书有效期缩短至45天。日前CA/B论坛服务器证书工作组投票通过SC-081v3提案,最终决定将SSL/...

Android怎么设置端口转发,将访问本设备的端口转到另外一台设备

一、Android系统怎么设置端口转发,将访问本设备的端口转到另外一台设备?要设置端口转发,您需要先在Android设备上安装一个支持端口转发的应用程序。其中一个常用的应用是"Termux&#...

大神级产品:手机装 Linux 运行 Docker 如此简单

本内容来源于@什么值得买APP,观点仅代表作者本人|作者:灵昱Termux作为一个强大的Android终端模拟器,能够运行多种Linux环境。然而,直接在Termux上运行Docker并不可行,需要...

关于H3C交换机的SSH功能配置方法(华三交换机ssh配置)

对于交换机的初步学习,作为初学者的我,还望诸位不吝赐教。若存在不足之处,烦请大家多提宝贵意见。同样身为初学者的我们,亦可携手共进,相互分享技术经验。一、本地用户配置(核心步骤)1.创建用户并设置密码...

Linux常用操作ssh(linux中的ssh命令)

ssh#p是小写ssh-p22user@hostsftp#连接sftp-P22root@host#将文件上传到服务器上:put[本地文件的地址][服务器上文件存储的位置]#将...

小白心得,如何使用SSH连接飞牛系统(fnos)?

一、背景作为一个刚接触飞牛系统的小白,在研究飞牛os的时候,发现很多功能都需要连接ssh,但是如何使用SSH连接飞牛系统成为入门飞牛os的一道坎。下面以自己的学习经历详细记录下过程吧。二、系统设置1、...

如何在 Windows 11 或 10 上使用 Winget 安装 OpenSSH

SSH(SecureShell)是大多数开发人员和系统管理员用来通过Linux远程连接托管服务器或任何云服务的工具,因为SSH在Linux中是内置的。然而,对于Windows呢?是的...

linux文件之ssh配置文件的含义与作用

ssh远程登录命令是操作系统(包括linux和window系统)下常用的操作命令,可以帮助用户,远程登录服务器系统,查看,操作系统相关信息。linux系统对于ssh命令有专门保存其相关配置的目录和文件...

害怕Linux SSH不安全?这几个小妙招安排上!

ssh是访问远程服务器最常用的方法之一,同时,其也是Linux服务器受到攻击的最常见的原因之一。不过别误会...我们并不是说ssh有什么安全漏洞,相反,它在设计上是一个非常安全的协议。但是安...

取消回复欢迎 发表评论: