树莓派超全系列教程文档--(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.png[Apache 成功消息]

这意味着 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)通过网络启动树莓派

相关推荐
TH_11 小时前
cmd_常用命令
服务器
_星辰大海乀2 小时前
网络原理 -- HTTP
java·服务器·http·get方法·post方法
励志不掉头发的内向程序员3 小时前
【Linux系列】掌控 Linux 的脉搏:深入理解进程控制
linux·运维·服务器·开发语言·学习
望获linux3 小时前
【实时Linux实战系列】实时 Linux 在边缘计算网关中的应用
java·linux·服务器·前端·数据库·操作系统
真正的醒悟3 小时前
什么是网络割接
运维·服务器·网络
雲帝4 小时前
pveproxy 无响应不能访问web
服务器
序属秋秋秋5 小时前
《Linux系统编程之入门基础》【Linux基础 理论+命令】(上)
linux·运维·服务器·ubuntu·centos·命令模式
ximy13358 小时前
AI服务器工作之服务器的种类分类
运维·服务器
恒创科技HK8 小时前
香港服务器CPU中E5和Gold的区别
运维·服务器
黄沐阳9 小时前
stp,rstp,mstp的区别
服务器·网络·php