搭建Apache + MySQL + PHP (LAMP Server环境)

在Raspberry Pi上安装LAMP(Linux,Apache,MySQL,PHP)服务器。 LAMP是用于Web开发的软件包, Raspberry Pi将安装Raspbian操作系统,您将使用phpMyAdmin通过网络界面轻松管理数据库.网络上方法很多,多数是从X86/64平台上参照而来的,因为那些教程版本使用的Linux版本有些差异,导致有些时候会莫名其妙的出一些意外而安装不了.这里总结出一个对于树莓派Raspbian来说相对统一和正确的做法,本文只适用于新手.

更新和升级

在开始安装过程之前,请打开“终端”窗口并运行以下命令来更新一下你的软件列表和升级.
sudo apt update && sudo apt upgrade -y

安装Apache2

Apache2是使用最广泛的Web服务器软件。 简而言之,Web服务器是处理访问网页请求的软件。 然后,根据您请求的页面,服务器将生成为您服务的文档(.html,.php等)

sudo apt install apache2 -y
安装Apache2后,要测试您的安装,进入/ var/www/html目录,输入下面的命令:

cd /var/www/html
/var/www/html $ ls -al

您应该在该文件夹中有一个index.html文件。要在浏览器中打开该页面,您需要知道Raspberry Pi IP地址。输入:hostname -I可以看见树莓派的IP地址是多少

傻瓜点的方法可以在路由器看看有没有主机名名为:raspberrypi的设备来查看IP.

在浏览器输入:http://树莓派IP,看见下图的页面表示成功:

安装PHP

PHP是啥?自行百度吧.这里简单说说:PHP是服务器端脚本语言。 PHP(超文本预处理器)用于开发动态Web应用程序。一个PHP文件包含<?php…?>标记,并以扩展名“ .php”结尾

安装命令sudo apt install php

您可以删除index.html并创建一个PHP脚本来测试安装:

删除Apache2安装时自带的index.html文件
sudo rm index.html
新建一个PHP文件代替
sudo nano index.php
在您的index.php文件中,添加以下代码以回显“ hello world”消息.(别问咋保存,如果不会,真的要从Linux最基本学起...)

<?php echo "hello world"; ?>

完成后重启一下APache2:
Finally, restart Apache2

要测试Apache2是否正在提供.php文件,请打开Raspberry Pi IP地址,它应该显示先前创建的index.php脚本中的“ hello world”消息。

如果一切正常,则可以从/var/www/ html目录中删除index.php文件:
sudo rm index.php

安装 MySQL(MariaDB服务器)

MySQL(通常称为My SQ-L)是一种流行的开源关系数据库.通过输入以下命令来安装MySQL服务器(MariaDB服务器)和PHP-MySQL软件包:

sudo apt install mariadb-server php-mysql -y
sudo service apache2 restart

安装MySQL(MariaDB Server)后,建议运行以下命令以保护MySQL(要培养职业素养啊...):
sudo mysql_secure_installation

在您的终端窗口中应该会看见:

系统会问你几个问题,需要你逐步回答,按顺序如下:

  • 系统将要求您输入当前的root密码(输入安全密码):按Enter键
  • 输入Y,然后按Enter键设置root密码
  • 在“新密码:”提示下输入密码,然后按Enter。重要提示:请记住该root密码,因为稍后需要
  • 输入Y以删除匿名用户
  • 输入Y以禁止远程root登录
  • 输入Y以删除测试数据库并对其进行访问
  • 键入Y立即重新加载特权表

安装完成后,您会看到以下消息: “Thanks for using MariaDB!”.

如果您在登录phpMyAdmin时遇到任何错误,则可能需要创建一个新用户来登录。这些命令将创建一个新用户,其名称为(admin),密码为(your_password)。

sudo mysql --user=root --password
create user admin@localhost identified by 'your_password';
grant all privileges on *.* to admin@localhost;
FLUSH PRIVILEGES;
exit;

安装phpMyAdmin

phpMyAdmin是一个用PHP编写的免费软件工具,旨在使用Web界面处理MySQL的管理。

sudo apt install phpmyadmin -y

PHPMyAdmin安装程序将询问您几个问题。我们将使用dbconfig-common(注意!在ARMbian上这部是不能安装的,需要到官网下载手动安装和配置!)

  • 出现提示时选择Apache2,然后按Enter键
  • Configuring phpmyadmin? OK
  • Configure database for phpmyadmin with dbconfig-common? Yes
  • Type your password and press OK

启用PHP MySQLi扩展并重新启动Apache2以使更改生效:

sudo phpenmod mysqli
sudo service apache2 restart

当您转到RPi IP地址后跟/ phpmyadmin(http://192.168.1.86/phpmyadmin)时,您可能会在浏览器中看到“Not Found”错误页面,有时候不同Linux会出现这样的情况.我们可以使用ln命令新建一个软连接,将phpmyadmin文件夹移至/var /www/html,运行下:
sudo ln -s /usr/share/phpmyadmin /var/www/html/phpmyadmin

现在,输入ls,就可以看见一个phpmyadmin文件夹:

重新加载您的网页(例如:http://192.168.1.86/phpmyadmin),您应该看到phpMyAdmin Web界面的登录页面:

输入您定义的用户名(应为Username = root)和在安装过程中定义的密码。按执行按钮登录。加载新页面:

目前为止您的树莓派准备已经完成部署LAMP服务器了(可以说标准,因为PHP其实还有很多依赖包,根据你用途而决定安不安装),Apache2,MySQL,PHP。对于新人,phpMyAdmin,是以通过网络界面简化数据库管理的.

可选步骤(建议)

要管理您的网页,您应该更改/var/www/html /文件夹的权限。为此,请运行以下命令:

ls -lh /var/www/
sudo chown -R pi:www-data /var/www/html/
sudo chmod -R 770 /var/www/html/
ls -lh /var/www/

概括

带有phpMyAdmin的LAMP服务器,可让您构建有趣的IoT项目,例如:

  • ESP32/ESP8266 将数据发布到Raspberry Pi LAMP Server
  • 可视化来外网(异地远程)的传感器读数(ESP32 / ESP8266 + MySQL + PHP)
  • ESP32 / ESP8266使用PHP和Arduino IDE将数据插入MySQL数据库

一沙一世界,一花一天堂。君掌盛无边,刹那成永恒。