0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

怎样用树莓派制作Web服务器

454398 ? 来源:工程师吴畏 ? 2019-08-03 09:22 ? 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

Raspberry Pi Web服务器如何工作?

我们将首先通过安装Apache,PHP和MySQL并对其进行测试来将您的Raspberry Pi设置为本地服务器。执行此操作后,可以通过路由器上的端口转发技术将此本地服务器转换为Web服务器。执行端口转发后,您的Raspberry Pi将可通过互联网访问,因为您的路由器将指向它。查看此框图,了解构建Raspberry Pi Web服务器的详细分步过程。

怎样用树莓派制作Web服务器

安装Apache,PHP和MySQL对于Raspberry Pi Web服务器

在开始之前,请确保您的Raspberry Pi是最新的,如果没有,请通过在终端中运行以下命令来更新它:sudo apt-get update

接下来,我们将开始安装Raspberry Pi Web服务器所需的所有软件包。但在此之前,请执行以下命令。这有助于您了解我们系统的根目录。所以从现在开始,我们不需要一直使用“sudo”命令。sudo bash

现在,让我们安装Apache,这是项目的主要组成部分。为此,使用以下命令:apt-get install apache2 apache2-doc apache2-utils

在此之后,是时候在我们的Pi上安装PHP:apt-get install libapache2-mod-php5 php5 php-pear php5-xcache

这些赢了‘需要很长时间。现在我们应该安装数据库连接包(PHP-》 SQL):apt-get install php5-mysql

现在我们可以安装MySQL了服务器,它存储所有内容并充当Raspberry Pi Web服务器的数据库: apt-get install mysql-server mysql-client

在此安装过程中,您将成为要求输入服务器的密码。输入您将记住的密码。就是这样!你已经完成了第一步!现在重新启动Pi。

在Raspberry Pi上测试已安装的软件包

键入“localhost”或Pi的网络浏览器中的“127.0.0.1”。如果您已通过SSH连接,请在浏览器中键入Pi的IP地址。现在你应该看到一个页面说“它有效!”如果看到它,服务器设置正确。如果没有,你应该重复上面列出的命令并检查错误。

您可以通过更改《来编辑网页’/var/www‘目录中的strong》 index.html 文件。您可以将任何内容放入该文件夹,并在输入Pi的IP地址时在局域网中看到它。观看本教程,了解HTML和网页编辑。

现在,要在Raspberry Pi上进行测试,请打开LXTerminal并输入如下内容:sudo mysql -uroot -p

这应该询问您在安装过程中输入的密码。如果您输入了正确的密码,您应该会看到这样的屏幕。

您现在可以使用MySQL来控制数据库。更简单的方法是在下面。

为Raspberry Pi Web服务器安装phpMyAdmin

PhpMyAdmin 是一个用PHP编写的免费开源工具,旨在使用Web浏览器处理MySQL或MariaDB的管理。这样可以更轻松地控制数据库。要在Raspberry Pi Web服务器上安装它,您可以使用以下命令。

打开终端,让我们从以下开始: sudo apt-get install phpmyadmin

这将开始安装软件包。系统将询问您将使用哪个Web服务器。选择 apache2。

接下来,我们需要配置phpMyAdmin应该使用的数据库。为此,当你被问到时,你应该选择是:

此后,系统会要求您输入管理密码。输入您之前安装的MySQL数据库的密码。接下来,系统会要求您输入phpMyAdmin的自定义密码。我键入了相同的MySQL密码,因为它更容易记住。如果您愿意,也可以使用另一个密码。现在我们需要将Apache与phpMyAdmin结合使用。为此,您应该编辑apache2.conf文件。在终端中键入以下内容:sudo nano /etc/apache2/apache2.conf

在此文件的末尾(使用Ctrl + V导航),添加一行:Include /etc/phpmyadmin/apache.conf

重新启动服务器使用:sudo /etc/init.d/apache2 restart

现在,查看Web浏览器中的链接:/phpmyadmin或localhost/phpmyadmin。你应该看到下面的页面。

作为用户名,您可以输入“root”,作为密码,您可以输入密码给了MySQL服务器。如果这不起作用,请尝试使用phpMyAdmin密码。如果你能成功登录,瞧!已完成。

现在,您可以通过自定义 index.html 或插入自定义HTML文件并在 www文件夹。您可以将图像,视频或任何您想要的内容放在www文件夹中,并在本地区域网(LAN)中访问它。既然您还拥有自己的数据库,则可以使用它来维护站点。

现在,我们将向全世界提供本地服务器!按照以下步骤执行此操作:

为您的Raspberry Pi提供静态IP地址

现在,您赢了能够从另一个网络访问您的服务器。您只能访问本地网络中的服务器。我们将在全球范围内将我们的服务器提供给互联网!让我们开始将我们的Raspberry Pi Web服务器连接到互联网。您家中的调制解调器为连接到它的所有设备提供一个数字,以了解设备。此号码称为互联网协议(IP)地址。它是这样的xxx.xxx.x.x.

有两种类型的IP地址:内部IP地址和外部IP地址。我上面提到的内容是关于内部IP地址:从调制解调器到连接设备的数字,用于定位它。您的调制解调器有一个号码由您的互联网服务提供商(ISP)定位计算机和系统。这个号码被称为外部IP地址。我们将讨论内部IP地址。

我们的调制解调器给我们一个随机数。大多数情况下,它的启动类似于192.168.1.xxx或192.168.0.xxx或192.168.xxx.xxx。随机数由名称或DHCP调用。主机名也类似于IP地址。它是连接到网络以识别它们的设备的标签。 Pi的IP地址设置为DHCP。我们需要将其更改为静态IP地址。为此,我们需要在Pi中编辑文件。在此之前,我们需要收集有关我们网络的一些信息。为此,请键入以下命令。在此之前随身携带纸和笔!

执行命令:ifconfig

请注意上图中突出显示的行。

inet地址:192.168.1.35

Bcast:192.168.1.255

面具:255.255.255.0

现在,我们需要网关和目标地址。为此,键入以下命令:netstat -nr

记下突出显示的部分:

目的地:192.168.1.0

网关:192.168.1.1

现在让我们编辑网络接口。它位于/etc/network/interfaces.sudo nano /etc/network/interfaces

在此文件中,您可以看到如下内容:

突出显示的部分, iface eth0 inet dhcp , 应更改为 iface eth0 inet静态。在该行下,按以下格式添加我们之前收集的信息。

注意: 更改数字与你的下面写在一起。这些是我的。

地址192.168.1.72

网络掩码255.255.255.0

网络192.168.1.0

广播192.168.1.255

网关192.168.1.1

这些数字是什么?

地址:这是您从theifconfig命令获得的 inet地址。您可以给出以192.168.1.xxx开头的任何数字。 xxx可以替换为任何数字。最好将它设置在2到100之间。建议选择更高的数字,因为较低的数字可能会导致IP地址的删除,这意味着两个设备可能具有相同的地址。

网络掩码:这是ifconfig命令中的掩码地址。

网络:这是您从netstat -nr命令获得的目的地地址。

广播:这是您从ifconfig命令获得的Bcast 地址。

网关:这是您从netstat -nr命令获得的网关地址。 》最后,它在我的文件中看起来像这样。

现在,按Ctrl + X保存并按Y.然后,使用现有的皮带删除终端中的此命令:sudo rm /var/lib/dhcp/*

在此之后,您应该重新启动Pi并检查ifconfig命令。请记住,您现在无法使用旧的IP地址进行SSH,请使用新的IP地址进行SSH连接。在我的,ifconfig看起来像这样。

如果你的地址显示你的新IP地址,恭喜!您有一个静态IP地址。

在您的Raspberry Pi Web服务器上设置端口转发和DDNS

现在,我们将要玩我们的路由器或调制解调器。您需要先前写下的网关地址。您可以在计算机或Pi上执行此过程。我建议你在电脑上做。为此,打开浏览器并在URL列中键入网关号,然后按Enter键。

您将看到登录屏幕或框出现并询问您的用户名和密码。有时,它可能是在您的调制解调器上写的。如果不是,你应该尝试猜测。别担心,我会给你一些选择:

用户名 密码

adminadmin

admin密码

用户名密码

如果这不起作用,请将其设为空白并单击“登录”。或者致电调制解调器公司的客户服务。

登录调制解调器后,您可以看到与此类似的页面。这就是我在D-Link DSL-2750U调制解调器中看到的内容。您还应该看到类似的内容。

在此页面中,您可以看到名为“高级”的标签。您现在应该单击它并选择Port Fowarding。

之后,您应点击Port Fowarding菜单中的“Add”并输入如下所示:

选择服务作为“Web服务(HTTP)”并输入服务器IP地址,该地址现在是Pi的IP地址。外部和内部端口的启动和停止应为80.之后,单击“应用”。 80端口不会转发到路由器的80端口。

现在我们必须设置DDNS,它代表动态DNS(域名设置)。我们正在使用名为 No-IP 的网站。它帮助我们获取路由器的URL,它已转发端口80.所以让我们为Raspberry Pi Web服务器创建一个URL!

首先,我们需要在www.no-ip.com注册一个帐户。这项服务是免费的。您可以立即选择子域,也可以稍后选择一个子域。有四个子域选项。您也可以通过付款来选择域名。但在本教程中,我将向您展示如何获取Raspberry Pi Web服务器的子域URL。

动态DNS的功能很简单。我之前提到过,我们的ISP(互联网服务提供商)为我们提供了一个随机的外部IP地址。 No-IP.com将我们的IP地址更改为URL。我们也在我们的路由器中配置它,很快就会显示出来。因此,每当我们的调制解调器获得新的IP时,它就会将其发送到No-IP.com,并且它们连接新的IP地址和我们的Raspberry Pi Web服务器的静态URL。网址永远不会更改,但IP会自动更改。

创建帐户后,您应该使用No-IP.com发送的电子邮件激活您的帐户。激活后,您可以登录自己的帐户。您可以在“动态DNS菜单”下的子菜单“主机名”中查看新网址。

您可以点击它来检查您的URL。刚刚设置了Raspberry Pi Web服务器,您可以看到 It Works!页面。

我们的下一步是为No-IP.com的动态DNS配置路由器。为此,您应该再次访问路由器的页面并登录。登录后,您应该再次选择“高级”选项卡,然后您应该找到“动态DNS”选项。

如果它不在路由器的“高级”选项卡中,您应该在其他地方找到它。所有新路由器都有此菜单。如果仍然找不到它,请尝试更新路由器的固件。

在路由器的动态DNS菜单中单击“添加”。填写详细信息。

点击“申请”即可开始!一切都完成了。您有自己的Raspberry Pi Web服务器。您只需一个URL即可访问它。它可以访问整个世界!您可以使用互联网上提供的模板轻松制作出色的网站。

NaySo Technologies是我未来的公司,所以我在我的网站上使用了名称NaySoPi。你可以在我自己的Raspberry Pi网络服务器上找到我的网站:naysopi.ddns.net

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Web服务器
    +关注

    关注

    0

    文章

    139

    浏览量

    24936
  • 树莓派
    +关注

    关注

    122

    文章

    2054

    浏览量

    107826
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    如何使用树莓与OpenCV实现面部和运动追踪的云台系统?

    使用树莓和OpenCV实时扫描并存储二维码使用树莓和OpenCV实现物体与动物识别使用树莓
    的头像 发表于 08-14 17:45 ?113次阅读
    如何使用<b class='flag-5'>树莓</b><b class='flag-5'>派</b>与OpenCV实现面部和运动追踪的云台系统?

    搭建并优化树莓《我的世界》服务器:全面指南!

    使用树莓托管《我的世界》服务器具有诸多优势,尤其适合那些希望搭建小型、经济高效且节能的服务器的用户。无需额外硬件:无需强大的计算机或昂贵的服务器
    的头像 发表于 08-11 16:08 ?207次阅读
    搭建并优化<b class='flag-5'>树莓</b><b class='flag-5'>派</b>《我的世界》<b class='flag-5'>服务器</b>:全面指南!

    教你如何手搓一个树莓网络服务器

    使用树莓的定义和好处网络服务器是指利用HTTP及其他协议进行数据传输,处理通过万维网提交的客户端请求的软硬件组合。网络服务器的主要功能是存储、处理并向客户端(通常是网页浏览
    的头像 发表于 07-12 08:23 ?122次阅读
    教你如何手搓一个<b class='flag-5'>树莓</b><b class='flag-5'>派</b>网络<b class='flag-5'>服务器</b>!

    20个任何人都能完成的树莓酷炫项目!

    不知道如何利用你买的树莓?这个小设备真的能当台式电脑吗?能当服务器吗?能当广播电台吗?当然可以!为了帮助你入门,我们精心挑选了这份树莓
    的头像 发表于 07-03 17:10 ?850次阅读
    20个任何人都能完成的<b class='flag-5'>树莓</b><b class='flag-5'>派</b>酷炫项目!

    树莓小技巧:无需键盘或显示,如何通过WiFi设置树莓

    树莓是一款小巧便携的USB供电计算机,可以隐藏起来用于小型项目,如网络服务器或家庭自动化。通常,设置树莓需要键盘和显示
    的头像 发表于 06-26 15:41 ?450次阅读
    <b class='flag-5'>树莓</b><b class='flag-5'>派</b>小技巧:无需键盘或显示<b class='flag-5'>器</b>,如何通过WiFi设置<b class='flag-5'>树莓</b><b class='flag-5'>派</b>?

    树莓分类树莓识别不同型号的树莓

    在本教程系列的第一部分中,您将学习如何使用树莓AI摄像头来检测不同的树莓型号。本系列由DavidPlowman创建,他是树莓
    的头像 发表于 06-13 16:39 ?542次阅读
    <b class='flag-5'>树莓</b><b class='flag-5'>派</b>分类<b class='flag-5'>器</b>:<b class='flag-5'>用</b><b class='flag-5'>树莓</b><b class='flag-5'>派</b>识别不同型号的<b class='flag-5'>树莓</b><b class='flag-5'>派</b>!

    树莓“揪出”家里的耗电怪兽!

    在本应用中,我们将使用树莓设置一个CE电流监测,并通过网页界面显示电路的电流读数。本项目使用的组件硬件组件树莓2ModelBx112通
    的头像 发表于 06-04 15:33 ?792次阅读
    <b class='flag-5'>用</b><b class='flag-5'>树莓</b><b class='flag-5'>派</b>“揪出”家里的耗电怪兽!

    告别广告与 ISP 追踪!把树莓改造成家用网络的 DNS 服务器,简直太酷了!

    什么后果。当我了解到,只需用树莓这样便宜的东西就能搭建一个家用DNS服务器时,我不禁想,要是我早点这么做,下载广告拦截或者向互联网服务
    的头像 发表于 05-24 08:33 ?215次阅读
    告别广告与 ISP 追踪!把<b class='flag-5'>树莓</b><b class='flag-5'>派</b>改造成家用网络的 DNS <b class='flag-5'>服务器</b>,简直太酷了!

    树莓“吉尼斯世界记录”:将树莓的性能发挥到极致的项目!

    树莓是一款功能强大、体积小巧且高度可定制的设备,多年来,我们见证了它被应用于众多领域。无论是将其装入3D打印的经典游戏机外壳,还是简单地将它隐藏起来作为家庭文件服务器,我们都报道过在社区里
    的头像 发表于 05-22 16:53 ?765次阅读
    <b class='flag-5'>树莓</b><b class='flag-5'>派</b>“吉尼斯世界记录”:将<b class='flag-5'>树莓</b><b class='flag-5'>派</b>的性能发挥到极致的项目!

    树莓 Zero 打造的智能漫游车!

    使用PXFMini和树莓Zero打造您自己的自主漫游车。本项目所用组件硬件组件ErleRoboticsPXFmini×1树莓Zero×1树莓
    的头像 发表于 05-13 16:39 ?528次阅读
    <b class='flag-5'>用</b> <b class='flag-5'>树莓</b><b class='flag-5'>派</b> Zero 打造的智能漫游车!

    树莓“复活”我的世界爬行者,现实版“噩梦”机器人诞生!

    树莓与《我的世界》渊源已久。无论你是树莓运行服务器,还是玩《我的世界》
    的头像 发表于 05-07 17:31 ?260次阅读
    <b class='flag-5'>树莓</b><b class='flag-5'>派</b>“复活”我的世界爬行者,现实版“噩梦”机器人诞生!

    树莓与Arduino的区别是什么

    Pi): 树莓最初是作为教育工具设计的,旨在帮助学生学习计算机编程和电子工程。随着时间的推移,它已经发展成为一个多功能的微型计算机,可以用于各种项目,包括但不限于: 家庭媒体中心 游戏机 网络服务器 IoT(物联网)设备 教
    的头像 发表于 11-11 11:14 ?2522次阅读

    树莓gpio有什么,树莓gpio接口及编程方法

    一、树莓GPIO的用途 树莓(Raspberry Pi)是一款小巧、功能强大的单板计算机,广泛应用于编程教育、物联网项目、家庭媒体中心等领域。GPIO(General Purpos
    的头像 发表于 10-22 18:09 ?2836次阅读

    树莓gui开发什么ide

    ,非常适合树莓开发。 安装 :可以通过树莓的软件包管理apt安装VS Code。 优点 :界面简洁,启动速度快,支持
    的头像 发表于 08-30 16:49 ?1936次阅读

    树莓装ubuntu和raspbian哪个更好

    版本,包括桌面版、服务器版和物联网版等,适用于各种场景。 Raspbian是专为树莓开发的Linux发行版,由树莓
    的头像 发表于 08-30 15:41 ?3039次阅读