电子工程师技术服务社区
公告
登录
|
注册
首页
技术问答
厂商活动
正点原子
板卡试用
资源库
下载
文章
社区首页
文章
树莓派搭建网站系列教程之一:在树莓派上设置Apache
分 享
扫描二维码分享
树莓派搭建网站系列教程之一:在树莓派上设置Apache
树莓派
Apache
科技爱好者博客
关注
发布时间: 2020-04-26
丨
阅读: 1836
要在浏览器中访问网页,服务器端就需要安装Web服务器软件,而Apache是树莓派上最受欢迎的Web服务器之一。 Apache可以通过HTTP和HTTPS Web协议提供静态的HTML文件,安装PHP后,Apache还能够提供动态内容。 在本教程中,我们介绍了Apache的所有基础知识,包括安装和配置方法。 ## 设备清单 以下是树莓派安装Apache 网页服务器中使用的所有细节。 - 树莓派 2、3或4 - SD卡 - 树莓派电源 - 以太网线或 WiFi无线网卡 ## 如何在树莓派上安装Apache Web服务器 **1.**在将Apache安装到树莓派之前,必须首先通过运行以下两个命令来更新系统软件。 ```bash sudo apt-get update sudo apt-get upgrade ``` **2.**首先,我们需要在树莓派上安装Apache2软件包。 在终端中输入以下命令。 ```bash sudo apt install apache2 -y ``` **3.**在树莓派上安装Apache2之后,我们现在已经启动并运行了一个非常基本的Web服务器。服务器将能够提供非动态内容,例如HTML文件。 在下一节中,我们将通过将PHP安装到树莓派来扩展这个基本的Apache Web服务器。 要检查树莓派上Apache是否已启动并正在运行,可以在浏览器中输入树莓派的IP地址。服务器应该返回一个默认首页。 如果您不知道IP,则可以在终端中输入以下命令来查看。 ``` hostname -I ``` **4.**在网络浏览器中,输入树莓派的IP地址,它应该会出现如下页面。 ![](https://cf04.ickimg.com/bbsimages/202004/e5477b8432f8171e179c4ac824997d8e.jpg) **5.**为了能够在不使用root的情况下更改“ **/ var / www / html** ”中的文件,我们需要设置一些权限。 首先,我们将用户**pi**添加到**www-data**组,这是Apache2的默认组。 其次,我们将**/ var / www / html**目录中所有文件和文件夹的所有权授予**www-data**组。 ```bash sudo usermod -a -G www-data pi sudo chown -R -f www-data:www-data /var/www/html ``` **6.**之后,可以通过运行以下命令来更改默认网页。 Web服务器将为“ **/var/ww/html/@@** ”目录中的所有文件提供服务。 ``` nano /var/www/html/index.html ``` 为了让树莓派支持PHP(用于动态网页),需要在树莓派上安装PHP软件。 ## ** 为Apache设置PHP7 **1.**请注意,在开始本节之前,树莓派至少应该在运行Raspbian Buster版本的系统。 运行以下命令将所有PHP软件包安装到树莓派。 ``` sudo apt install php7.3 php7.3-mbstring php7.3-mysql php7.3-curl php7.3-gd php7.3-zip -y ``` **2.**现在PHP已安装到我们的树莓派中,我们可以对其进行测试以确保其正常工作。 可以通过在“ **/ var / www / html /@@** ”目录中创建一个PHP文件来测试PHP是否正常运行。在这个目录中创建文件将将可以通过web服务器来运行。 这里,我们将创建一个名为“ **example.php** ” 的PHP文件来验证PHP是否正常工作。我们可以通过运行以下命令来创建此文件。 ``` sudo nano /var/www/html/example.php ``` **3.**在此文件中,我们需要在PHP代码上添加以下行。 ``` ``` 这一行指定虚拟主机的开始命令,并且该虚拟主机应在端口80上侦听。 用于“ **https** ” 的端口是**443**。 ``` ServerName example.com ServerAlias www.example.com ``` 在这里,我们向虚拟主机添加了两个指令。这些指令中的第一个称为“ **ServerName** ”,它指定基本域。该服务器名称用于将VirtualHost与域名匹配。 第二个指令“ **ServerAlias** ”定义了将被匹配的其他域名,和基本域类似。 ``` DocumentRoot /var/www/example.com/public_html ``` “ **DocumentRoot** ”指令定义了网站目录。 ``` ErrorLog ${APACHE_LOG_DIR}/example.com_error.log CustomLog ${APACHE_LOG_DIR}/example.com_access.log combined ``` 在这最后两个指令“ **ErrorLog** ”和“ **CustomLog** ”中,我们指定了我们希望保留日志文件的位置。 ``` ``` 最后,我们关闭VirtualHost部分。 **3.**完成所有步骤后,代码应最终看起来像下面的样子。 ```bash
ServerName example.com ServerAlias www.example.com DocumentRoot /var/www/example.com/public_html ErrorLog ${APACHE_LOG_DIR}/example.com_error.log CustomLog ${APACHE_LOG_DIR}/example.com_access.log combined
``` 确认完成之后,保存文件,按**CTRL + X**之后**Ÿ**然后**回车**。 **4.**现在,我们创建一个文件夹,用于存储HTML文件。并且该文件夹的所有权应该**属于** “ **www-data** ”用户组。 运行以下命令来创建我们需要的文件夹并对其所有权进行更改。 ```bash sudo mkdir -p /var/www/example.com/public_html sudo chown -R www-data:www-data /var/www/example.com/public_html ``` **5.**现在我们已经创建了VirtualHost和它的文件夹,然后,需要通过运行以下命令激活它。 ``` sudo a2ensite example.com.conf ``` **6.**最后,要加载新的虚拟主机文件,我们需要告诉Apache2服务重新加载配置。 只需运行以下命令即可完成此操作。 ``` sudo systemctl reload apache2 ``` 现在,你可以将域名的DNS指向树莓派的公共IP,然后就可以访问运行在树莓派上的网站了
原创作品,未经权利人授权禁止转载。详情见
转载须知
。
举报文章
点赞
(
0
)
科技爱好者博客
关注
评论
(0)
登录后可评论,请
登录
或
注册
相关文章推荐
MK-米客方德推出工业级存储卡
Beetle ESP32 C3 蓝牙数据收发
Beetle ESP32 C3 wifi联网获取实时天气信息
开箱测评Beetle ESP32-C3 (RISC-V芯片)模块
正点原子数控电源DP100测评
DP100试用评测-----开箱+初体验
Beetle ESP32 C3环境搭建
【花雕体验】16 使用Beetle ESP32 C3控制8X32位WS2812硬屏之二
X
你的打赏是对原创作者最大的认可
请选择打赏IC币的数量,一经提交无法退回 !
100IC币
500IC币
1000IC币
自定义
IC币
确定
X
提交成功 ! 谢谢您的支持
返回
我要举报该内容理由
×
广告及垃圾信息
抄袭或未经授权
其它举报理由
请输入您举报的理由(50字以内)
取消
提交