在 Debian 11 上安装 Apache 的分步指南

Apache HTTP Server,被称为 Apache,是由 Apache Software Foundation 创建的一个免费和开放源代码的网页服务器。自1990年代初启动以来,Apache 由于其模块化、灵活性和可靠性,长时间以来一直是互联网上占主导地位的网页服务器。它支持包括虚拟主机、SSL/TLS 和灵活的配置系统在内的广泛功能。Apache 可用于包括 UNIX、Linux 和 Windows 在内的不同操作系统。在本文中,我们将探讨在 Debian 11 上安装 Apache。这些指南也适用于更早的版本,比如 Debian 10,以及更晚的版本,比如 Debian 12。

如果您正在按照我们的教程在没有控制面板的 Debian 11 服务器上安装 WordPress,并且已经完成了 nginx 的安装,那么首先停止 nginx

sudo systemctl stop nginx

现在可以开始安装 Apache。

以下是在 Debian 11 上安装 Apache 的分步指南:

步骤 1. 更新系统

首先,更新可用软件包列表:

sudo apt update

步骤 2: 安装 Apache

sudo apt install apache2

步骤3. 在 Debian 11 上启动 Apache

sudo systemctl start apache2

步骤 4. 检查 Apache 状态

sudo systemctl status apache2

如果一切顺利,您将看到“active (running)”的消息。

步骤 5: 设置防火墙

使用 UFW 允许 Apache 的流量。为此,执行以下命令:

sudo ufw allow 'WWW Full'

步骤 6: 检查 Apache 的工作情况

在浏览器中打开您服务器的 IP 地址或域名。在我们的课程中,我们使用的是子域名 http://test.friendhosting.net
如果一切正常,您应该会看到“Apache2 Debian Default Page”标准页面。

apache2 debian 11

步骤 7: 为您的网站创建目录

要为虚拟主机 test.friendhosting.net 创建根目录,您需要在终端执行以下命令:

sudo mkdir -p /var/www/test.friendhosting.net

执行这个命令后,将在 /var/www/ 目录下创建 test.friendhosting.net 目录,并且如果它们还没有被创建,也会创建所有必要的父目录。

为了设置正确的权限,需要执行命令:

sudo chown -R www-data:www-data /var/www/test.friendhosting.net

执行此命令会更改 /var/www/test.friendhosting.net 及其所有子目录和文件的所有者和组为 www-data。这样做是为了确保网页服务器能够正确地处理这个目录中的内容,具有根据配置进行读、写或执行操作的权限。

步骤8:在 Debian 11 中配置 Apache 虚拟主机

虚拟主机允许您的 Apache 网页服务器接受请求并为不同的域名提供服务,就像您在一个物理服务器上拥有多个网页服务器一样。

Apache 有一个名为 sites-available 的目录,其中存储着可用的虚拟主机配置。每个网站都需要一个单独的文件。为您的网站创建配置文件。作为示例,我们使用 test.friendhosting.net

sudo nano /etc/apache2/sites-available/test.friendhosting.net.conf

在其中添加以下配置:

    
<VirtualHost *:80>
    ServerAdmin [email protected]
    ServerName test.friendhosting.net
    ServerAlias www.test.friendhosting.net
    DocumentRoot /var/www/test.friendhosting.net/
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

在Apache虚拟主机配置中的每个指令都有其特定角色,并且对于正确设置网站托管非常重要。以下是对每个指令的详细描述:

ServerAdmin 指定网站管理员的电子邮件地址。这个地址常常显示在服务器的错误页面上,以便访客可以报告技术问题。在示例中,[email protected]是将会收到问题报告的地址。

ServerName 设定虚拟主机服务的主域名。当Apache接收到请求时,它会使用ServerName的值来确定使用哪一个虚拟主机。示例中的 test.friendhosting.net 值表明,该虚拟主机将响应针对该域名的请求。

ServerAlias 定义了将由该虚拟主机处理的额外域名。这允许一个虚拟主机对多个不同的域名进行响应。在这个案例中,www.test.friendhosting.net 是别名,虚拟主机也将处理对www版本域名的请求。

DocumentRoot 设置存储网站文件的目录。这是Apache为虚拟主机提供内容的根目录。在示例中,/var/www/test.friendhosting.net/ 是存放所有网站文件的文件夹,例如HTML, CSS, JavaScript和图片。

ErrorLog 设置将记录服务器错误消息的文件路径。这个日志包含了服务器上发生的任何错误的详细信息,经常被用于问题诊断。在这个例子中,${APACHE_LOG_DIR}/error.log 使用了环境变量APACHE_LOG_DIR,通常被定义为 /var/log/apache2。

CustomLog 指定记录每个对服务器请求信息的访问日志文件的路径。这包括诸如访客的IP地址,请求的URL,请求时间和服务器响应状态代码等细节。指令末尾的combined意味着将使用组合日志格式,这是一个广泛接受的标准,包含了有用的信息,如引用来源(用户从哪里来)和用户代理信息(使用了哪种浏览器)。

现在是时候激活您的虚拟主机了。为此,请执行以下命令:

sudo a2ensite test.friendhosting.net

现在停用默认虚拟主机。为此,请执行以下命令:

sudo a2dissite 000-default.conf

重启 Apache:

sudo systemctl restart apache2

在我们网站的根目录中创建 index.html。执行命令:

sudo nano /var/www/test.friendhosting.net/index.html

并复制粘贴以下文本:

Virtual host test.friendhosting.net is working.

现在,通过浏览器打开我们的域名 http://test.friendhosting.net,我们将看到标准页面
apache debian 11

这是安装和配置 Debian 11 上的 Apache2 的基本指南。还有许多额外的设置和优化,您可以执行以最大限度地根据您的需求调整服务器。

This site is using cookie files, Google Analytics system to collect statistics about website visitors and also collects data like your IP and geolocation. More in our policy.
By continuing to use current website you are automatically agreed with using described technologies.