【树莓派】搭建LAMP(Linux Apache Mysql PHP)服务器

article/2025/9/22 21:15:56

基于树莓派搭建LAMP(Linux Apache Mysql PHP)服务器

配置树莓派
树莓派
连接WIFI
配置SSH
连接SSH
修改密码并解锁root用户
固定IP
调整服务器性能
Apache
Mysql
PHP
内网穿透

本文主要介绍了树莓派购买后的配置方法,并在树莓派上搭建LAMP(Linux Apache Mysql PHP)服务器。

需要提前准备的材料:
  1. 树莓派1/2/3型 开发板(我用的是3B+),适配的5V2A电源;
  2. TF卡(不小于4G),TF 读卡器;
  3. 一块移动硬盘,最好再配个有源USB-Hub;
  4. TF镜像。找到对应Pi的型号的镜像,这里提供Ubuntu MATE镜像
    链接:https://pan.baidu.com/s/1FyKzqCMRFdpm2BFHQYBW2Q
    提取码:7pav
  5. 磁盘格式化工具SDFormatter:
    下载链接:https://pan.baidu.com/s/12VaGB3daeowpgqZRClmbvg
    提取码:hq77
  6. 镜像读写工具 win32diskimager:
    下载链接:https://pan.baidu.com/s/184oU57y0Oqq8nqiksP0HPg
    提取码:jf53
  7. 一台计算机,Windows系统;
  8. 远程SSH 本文以Xshell为例;
  9. 一台显示器或都电视机,HDMI接口,HDMI线。(其实不用显示设备也可以,通过SSH操作)。

一、 配置树莓派

(1)写入镜像

将SD卡插入读卡器连接电脑,运行 SDFormatter.exe 对SD卡进行格式化后,打开 Win32DiskImager.exe 烧写镜像,点击“Write”,完成后把SD卡插入树莓派。
对SD卡进行格式化

烧写镜像

(2)深度配置

1、树莓派通电开机,进入主界面,右上角连接WIFI

(如没有显示器,可参见本博客 树莓派xdrp远程桌面登录 文章,实现 远程桌面登录)

进入主界面

2、配置SSH

sudo raspi-config    #进入到树莓派系统配置界面

在这里插入图片描述
在这里插入图片描述

3、固定IP

由于我们日常都是使用ssh来开发跟管理树莓派,偶尔用一下远程桌面,但是路由器的DHCP服务器经常会给树莓派分配不同的IP地址,每次登录路由器查看比较麻烦,因此需要将树莓派的IP地址设置为固定IP。

使用浏览器登录路由器,在地址栏输入:192.168.1.1,然后回车,默认的账号密码都是admin,将IP与MAC绑定。
固定IP

4、连接SSH

打开Xshell,点击右上角:文件—>新建—>连接—>主机处输入树莓派IP地址—>用户身份验证—>用户名:pi—>密码:yahboom(或者 raspberry)—>确定

5、修改密码并解锁root用户

镜像中的系统有默认的用户名和密码,连上外网后,任何人都可以登陆,然后随意使用这个树莓派。

要更改密码,在登陆后输入:

passwd

然后在之后出现的提示符后输入新密码。

sudo passwd root

执行此命令后系统会提示输入两遍的root密码,输入你想设的密码即可,然后在执行

sudo passwd --unlock root

这样root用户解锁成功。

6、调整服务器性能

通常来说,调整服务器性能是之后要做的事情。但是对于树莓派来说,做一个调整,就能提升系统的性能。

树莓派有256MB(后来的版本是512MB)内存。但这个内存是图形和主系统共用的。默认情况下64MB分配给图形系统。对于不准备跑图形界面,或者很少跑图形界面的设备,例如服务器这种情况下,64MB内存太多了。将图形系统的内存减少到32MB,输入下面的命令。

sudo cp /boot/arm224_start.elf /boot/start.elf
或者用 sudo raspi-config 在配置目录中改动
sudo cp /boot/arm192_start.elf /boot/start.elf #恢复之前的设置

二、 搭建LAMP环境

Linux - 操作系统

Apache - 网络服务器(HTTP)软件

Mysql - 数据库服务

PHP or Perl - 编程语言

(1) 安装Apache

sudo apt-get updata
sudo apt-get install apache2
或者 sudo apt install apache2 -y
systemctl status apache2 #检查是否开启Apache

/etc/init.d/apache2 start #开启服务器
/etc/init.d/apache2 stop #关闭服务器
/etc/init.d/apache2 restart #重启服务器

(2) 安装mysql

MySQL 和 MariaDB 都是 Ubuntu 中的数据库服务器。 MySQL Server 和 MariaDB Server的安装包都可以在Ubuntu 的默认软件源中找到,我们可以选择其中的一个来安装。通过下面的命令来在终端中安装mysql服务器。

sudo apt install mysql-server mysql-client

安装过程中,会出现一个提示符让你输入一个密码。

这个密码是mysql root用户的密码,务必牢记。

确认是否安装成功:

sudo netstat -tap | grep mysql
或者
sudo netstat -ano | grep 3306

(3)安装PHP

Perl是系统预装的,所以我这里只写PHP的安装。

输入下面的命令,就可以安装PHP 5,以及PHP访问mysql数据库所需要的库。

sudo apt-get install php5
sudo apt-get install php5-mysqlPHP7:
sudo apt install php7.0-mysql php7.0-curl php7.0-json php7.0-cgi php7.0 libapache2-mod-php7.0

输出phpinfo

vim /var/www/html/phpinfo.php
<?phpecho phpinfo();
?>

现在可以从 浏览器中访问这个页面, 输入 : “http://Server_IP/samplepage.php” ,Server_IP是你服务器的ip,查看是否安装成功。

三、写在最后的话

至此,LAMP(Linux Apache Mysql PHP)服务器已基本搭建完成,在实现外网访问服务器后,网络数据可以通过防火墙连到树莓派,实现服务器全部功能。

关于如何实现外网访问服务器,参见本博客 内网穿透 系列文章。


http://chatgpt.dhexx.cn/article/mKTS76lT.shtml

相关文章

PHP分布式部署代码同步Git实现

PHP 分布式部署后 代码自动同步实现 项目架构如下: 需要更新代码时我们只需要把代码传到主服务器后通过定时任务主服务器自动push 代码到Git服务端,之后其他从服务器则自动从Git云端拉取最新的代码即可 需要用到 expect 软件 安装expect yum install expect定时push shell…

大部分PHP程序员,都搞不懂如何安全代码部署

总结 1.创建一个普通用户账户 2.先设置所有文件夹为只读不可写 sudo chmod -R a-w /path/to/directory3.再把php执行的用户组加上 sudo chown -R username:groupname /path/to/php/files4.再把可执行的文件加入 sudo chmod -R 755 /path/to/php/files关于权限 理清PHP在Lin…

PHP项目部署到云服务器(CentOS+HTTP+PHP+MYSQL)

如何将写好的项目部署到云服务器&#xff0c;让外界可以通过互联网访问项目网站。以下使用的是腾讯云服务器操作&#xff0c;系统环境为CentOS7.9。 一、购买云服务器 打开腾讯云官网&#xff0c;注册好自己的平台账号。如果是新人的话去新人专区购买服务器&#xff0c;性价比…

phpstudy搭建nginx+php服务器显示php网页

下载了phpstudy-all.bin一键安装包&#xff0c;管理员执行./phpstudy-all.bin安装完成后&#xff0c;在火狐浏览器上输入:localhost 测试服务器是否从成功。 遇到的问题&#xff1a; 默认打开的web页面是/usr/share/nginx/www/index.html页面&#xff0c;如下 初次尝试解决&a…

php如何启动内置web服务器

前言&#xff1a; PHP从5.4开始&#xff0c;就提供了一个内置的web服务器。 当然这个主要是用来做本地的开发用的。 不能用于线上环境。 现在我就介绍一下这个工具如何使用。 前提&#xff1a; php已经加入到本地电脑的环境变量中 命令中输入&#xff1a; cd 项目目录 php -S…

公司官网建站笔记(二):在云服务器部署PHP服务(公网访问首页)

若该文为原创文章&#xff0c;转载请注明原文出处 本文章博客地址&#xff1a;https://hpzwl.blog.csdn.net/article/details/124659175 各位读者&#xff0c;知识无穷而人力有穷&#xff0c;要么改需求&#xff0c;要么找专业人士&#xff0c;要么自己研究 红胖子(红模仿)的博…

阿里云ECS服务器Linux环境下配置php服务器(三)--项目部署篇

在前两篇里&#xff0c;我们分别介绍了如何购买阿里云服务器&#xff0c;安装基本软件和配置&#xff08;请看阿里云ECS服务器Linux环境下配置php服务器(一)&#xff0d;&#xff0d;基础配置篇&#xff09; 以及如何安装使用phpMyAdmin&#xff08;请看阿里云ECS服务器Linux环…

阿里云ECS服务器Linux环境下配置php服务器(二)--phpMyAdmin篇

上一篇讲了php服务器的基本配置&#xff0c;我们安装了apache&#xff0c;php&#xff0c;还有mysql&#xff0c;最后还跑通了一个非常简单的php页面&#xff0c;有兴趣的朋友可以看我的这篇博客&#xff1a; 阿里云ECS服务器Linux环境下配置php服务器(一) 这一次我们来继续说…

微信小程序wx.uploadFile(上传文件)PHP服务器获取formData的数据

例如下面的代码是微信小程序上传图片的伪代码 wx.chooseImage({success: function(res) {var tempFilePaths res.tempFilePathswx.uploadFile({url: https://example.weixin.qq.com/upload, //仅为示例&#xff0c;非真实的接口地址filePath: tempFilePaths[0],name: file,fo…

树莓派4B搭建轻量级Web服务器 (Nginx,sqlite,php)

树莓派硬件的配置&#xff0c;包括外置硬盘的挂载和设置&#xff0c;系统的烧录和设置就略了&#xff0c;详情见第一篇文章。 一&#xff1a;更新源安装Nginx服务器 sudo apt-get updatesudo apt-get install nginx二&#xff1a; 启动Nginx服务器 //启动服务器的两种方式sudo…

一、用XAMPP搭建本地PHP服务器,运行php文件

一、XAMPP下载安装 点击下载&#xff0c;下载完成之后执行安装文件安装&#xff0c;一路next&#xff0c;完成。运行界面如下&#xff1a; 二、启动 这里&#xff0c;我是把XAMPP安装在了D:\XAMPP文件夹下。 点击第一行Apache后面的Start是启动XAMPP本地虚拟机(默认端口8080)…

Android手机利用KSWEB+端口转发搭建PHP服务器

Android手机利用KSWEB端口转发搭建PHP服务器 转载来自&#xff1a;https://golthr.gitee.io/articles/202002281619/ KSWEB是一款基于Android的开源服务器&#xff0c;可通过Lighttpd/Nginx/ApachePHPMySql在Android手机上搭建起自己的私人PHP WEB服务器。软件提供了上述功能…

PHP搭建服务器

1. 认识互联网 思考&#xff1a;平常我们上网的时候是怎么实现的&#xff1f; 引入&#xff1a;上网其实打开浏览器&#xff0c;然后输入一个URL&#xff0c;最后就看到了网站打开的效果。 1.1. 普通用户访问网站【了解】 定义&#xff1a;URL&#xff1a;Uniformed Resource L…

PHP本地web服务器搭建教程(通俗易懂版)

现在是北京时间21点22分&#xff1b;忙碌了一天的小菜鸡开始写起了博文。在被搭建本地服务器折磨了一天后终于成功的本人&#xff0c;怀着激动的心情写下了这篇博文&#xff0c;也算是写一篇学习笔记了&#xff0c;希望本篇博文能对想搭一个本地服务器的小伙伴们有所帮助。 好…

PHP(1)搭建服务器

PHP&#xff08;1&#xff09;搭建服务器 一、配置并安装Apache1. 配置2. 安装3. 验证4. 排错5. 重启6. 添加环境变量 二、安装PHP1. 配置2. 验证 三、Apache加载PHP四、安装虚拟主机 一、配置并安装Apache 1. 配置 下载 Apache Download解压 将解压后的文件夹复制到指定目录…

微信小程序网络请求服务器php接口获取数据库数据信息

前言 在写php接口之前 需要事先搭建好环境 1 拥有一台服务器 2 服务器安装好宝塔 3 搭建安装好Apache套件&#xff08;包括php Apache MySQL数据库等等&#xff09; 4 已经开放相应的端口 5 安装微信开发者工具 如果小白没关系&#xff0c;下面的视频会一步一步的说明很详细&…

Android Studio —— ArrayAdapter

效果 代码过程 代码 <?xml version"1.0" encoding"utf-8"?> <TextView xmlns:android"http://schemas.android.com/apk/res/android"android:layout_width"match_parent"android:gravity"center_vertical"andro…

java arrayadapter_简单好用的Adapter---ArrayAdapter详解

拖延症最可怕的地方就是:就算自己这边没有拖延&#xff0c;但对方也会拖延&#xff0c;进而导致自己这边也开始拖延起来&#xff01;现在这个项目我这边已经是完工了&#xff0c;但是对方迟迟没有搞定&#xff0c;导致整个项目无法提交。 这就是拖延症的可怕&#xff1a;我们不…

ArrayAdapter SimpleAdapter

1.ArrayAdapter 数组适配器 用于简单的文字列表 2.SimpleAdapter 简单适配器 用户条目只有两个控件的列表 3.条目点击事件 ListView 一般用 setOnItemClickListener() 这个方法属于 AdapterView 1.先得到适配器 getAdapter() 2.在得到所在位置的条目的数…

ArrayAdapter使用示例

1&#xff09;ArrayAdapter使用示例&#xff1a; 运行效果图&#xff1a; 代码实现&#xff1a; public class MainActivity extends AppCompatActivity {Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.…