树莓派超全系列教程文档--(57)如何设置 Apache web 服务器

如何设置 Apache web 服务器

    • [设置 Apache web 服务器](#设置 Apache web 服务器)
      • [安装 Apache](#安装 Apache)
      • [测试 web 服务器](#测试 web 服务器)
      • [为 Apache 安装 PHP](#为 Apache 安装 PHP)

文章来源: http://raspberry.dns8844.cn/documentation

原文网址

设置 Apache web 服务器

Apache 是一款流行的 web 服务器应用程序,您可以将其安装在 Raspberry Pi 上,以提供网页。

Apache 本身可以通过 HTTP 提供 HTML 文件,使用附加模块可以使用脚本语言(如 PHP)提供动态网页。

安装 Apache

首先,通过在终端中输入以下命令来更新可用的软件包:

复制代码
sudo apt update

然后,使用以下命令安装 apache2 软件包:

复制代码
sudo apt install apache2 -y

测试 web 服务器

默认情况下,Apache 会将测试 HTML 文件放在 web 文件夹中。当您在 Raspberry Pi 本身上浏览 http://localhost/ 或从网络上的另一台计算机浏览 http://192.168.1.10 (无论 Raspberry Pi 的 IP 地址是什么)时,将提供此默认网页。要查找 Raspberry Pi 的 IP 地址,请在命令行中输入 hostname -I (或阅读有关查找 IP 地址 的更多信息)。

在 Raspberry Pi 或网络上的另一台计算机上浏览默认网页,您应该会看到以下内容:

image::images/apache-it-works.pngApache 成功消息

这意味着 Apache 正在运行!

更改默认网页

此默认网页只是文件系统上的 HTML 文件。它位于 /var/www/html/index.html

在终端窗口中导航到此目录并查看其中的内容:

复制代码
cd /var/www/html
ls -al

这会显示以下内容:

复制代码
total 12
drwxr-xr-x  2 root root 4096 Jan  8 01:29 .
drwxr-xr-x 12 root root 4096 Jan  8 01:28 ..
-rw-r--r--  1 root root  177 Jan  8 01:29 index.html

这表明默认情况下 /var/www/html/ 中有一个名为 index.html 的文件,并且它由 root 用户拥有(封闭文件夹也是如此)。为了编辑该文件,您需要将其所有权更改为您自己的用户名。使用以下命令更改文件的所有者,将 <username> 占位符替换为您的主用户帐户的用户名:

复制代码
$ sudo chown <username>: index.html

您现在可以尝试编辑此文件,然后刷新浏览器以查看网页变化。如果您了解 HTML,您可以将自己的 HTML 文件和其他资产放在此目录中,并将它们作为本地网络上的网站提供服务。

为 Apache 安装 PHP

要允许您的 Apache 服务器处理 PHP 文件,您需要安装最新版本的 PHP 和适用于 Apache 的 PHP 模块。输入以下命令来安装这些内容:

复制代码
sudo apt install php libapache2-mod-php -y

现在删除 index.html 文件:

复制代码
sudo rm index.html

并创建文件 index.php

复制代码
sudo nano index.php

在其中放入一些 PHP 内容:

复制代码
<?php echo "hello world"; ?>

现在保存并刷新浏览器。您应该看到"hello world"。这不是动态的,但仍由 PHP 提供。尝试一些动态内容:

复制代码
<?php echo date('Y-m-d H:i:s'); ?>

或者显示您的 PHP 信息:

复制代码
<?php phpinfo(); ?>

上一篇 -- 树莓派超全系列教程文档--(56)如何使用Samba共享文件夹

下一篇 -- 树莓派超全系列教程文档--(58)通过网络启动树莓派

相关推荐
鹤落晴春6 分钟前
【Linux复习】管理SELinux安全性
linux·运维·服务器
lizhihai_994 小时前
股市学习心得-AI 产业链核心标的梳理清单
大数据·服务器·人工智能·科技·学习
黄同学real5 小时前
解决 Visual Studio Web Deploy 远程发布报 401 未授权 (ERROR\_USER\_UNAUTHORIZED)
服务器
天天进步20155 小时前
Tunnelto 源码解析 #9:控制服务器设计:Warp、WebSocket、Ping/Pong 与连接保活
运维·服务器·websocket
Java面试题总结6 小时前
Linux-Ubantu-贴士-apt的地盘
linux·运维·服务器
●VON6 小时前
AtomGit Flutter鸿蒙客户端:数据模型
android·服务器·安全·flutter·harmonyos·鸿蒙
酉鬼女又兒7 小时前
零基础入门计算机网络:网络层核心任务、三大关键问题、两种服务类型与 TCP/IP 网际层协议体系全解析
服务器·网络·网络协议·tcp/ip·计算机网络·php·求职招聘
Gauss松鼠会7 小时前
【GaussDB】GaussDB重要通信参数汇总
服务器·网络·数据库·sql·性能优化·gaussdb·经验总结
凡人叶枫8 小时前
Effective C++ 条款10:令 operator= 返回一个 reference to *this
java·linux·服务器·开发语言·c++·effective c++
某林2128 小时前
Isaac Sim 5.1.0 无头服务器部署与 RTX 显存段错误排障全记录
运维·服务器·docker·容器·isaac