如何在Ubuntu 20.04上安装Apache


原文地址:如何在Ubuntu 20.04上安装Apache

Apache是​​世界上最受欢迎的Web服务器之一。这是一个开放源代码和跨平台的HTTP服务器,可为Internet的很大一部分网站提供支持。Apache提供了许多强大的功能,可以通过其他模块进行扩展。本教程描述了如何在Ubuntu 20.04上安装和管理Apache Web服务器。

Apache是​​世界上最受欢迎的Web服务器之一。这是一个开放源代码和跨平台的HTTP服务器,可为Internet的很大一部分网站提供支持。Apache提供了许多强大的功能,可以通过其他模块进行扩展。

本教程描述了如何在Ubuntu 20.04上安装和管理Apache Web服务器。

先决条件

在开始本教程之前,请确保您以具有sudo特权的用户身份登录。

安装Apache

Apache包含在默认的Ubuntu存储库中。

安装非常简单。在Ubuntu和Debian系统上,Apache软件包和服务称为apache2

运行以下命令以更新软件包索引并安装Apache:

sudo apt update
sudo apt install apache2

您可以通过键入以下命令来验证Apache是​​否正在运行:

sudo systemctl status apache2

输出应告诉您该服务正在运行,并已启用以在系统引导时启动:

● apache2.service - The Apache HTTP Server
     Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
     Active: active (running) since Sat 2020-05-09 19:28:40 UTC; 36min ago
...

就这样,您已经在Ubuntu 20.04服务器上成功安装了Apache,然后就可以开始使用它了。

打开HTTP和HTTPs端口

Apache侦听端口80(HTTP)和443(HTTPS)。您必须在防火墙中打开这些端口,以便可以从Internet访问Web服务器。

假设您正在使用UFW,则可以通过启用“ Apache Full”配置文件来做到这一点,该配置文件包括两个端口的规则:

sudo ufw allow 'Apache Full'

验证更改:

sudo ufw status
Status: active

To                         Action      From
--                         ------      ----
22/tcp                     ALLOW       Anywhere
Apache Full                ALLOW       Anywhere
22/tcp (v6)                ALLOW       Anywhere (v6)
Apache Full (v6)           ALLOW       Anywhere (v6)

验证Apache安装

要验证一切正常,请打开浏览器,输入服务器IP地址http://YOUR_IP_OR_DOMAIN/,您将看到默认的Ubuntu 20.04 Apache欢迎页面,如下所示:

如何在Ubuntu 20.04上安装Apache

该页面包含有关Apache配置文件,帮助程序脚本和目录位置的一些基本信息。

设置虚拟主机

虚拟主机是一种Apache配置指令,它允许您在单个服务器上运行多个网站。通常,虚拟主机描述一个网站。

Apache出厂时默认启用了一个虚拟主机。指向服务器IP地址的所有域都将与默认虚拟主机匹配。如果您将要托管一个网站,则可以在其中上载其内容/var/www/html并进行编辑以编辑该/etc/apache2/sites-enabled/000-default.conf文件中找到的虚拟主机配置。

如果您打算托管多个网站,则需要为每个站点创建一个虚拟主机配置。在本节中,我们将为名为“ example.com”的域建立一个网站。您应该用域名替换“ example.com”。

第一步是创建文档根目录,该域名的网站文件将在其中存储和响应请求。运行以下命令创建目录

sudo mkdir -p /var/www/example.com

为了进行测试,请index.html在域文档根目录内创建一个文件:

/var/www/example.com/index.html

<!DOCTYPE html>
<html lang="en" dir="ltr">
  <head>
    <meta charset="utf-8">
    <title>Welcome to example.com</title>
  </head>
  <body>
    <h1>Success! example.com home page!</h1>
  </body>
</html>

完成后,保存并关闭文件。

为避免权限问题,请将域文档根目录的所有权更改为apache用户(www-data):

sudo chown -R www-data: /var/www/example.com

下一步是为“ example.com”域创建虚拟主机配置。最佳做法是将每个虚拟主机配置存储在单独的文件中。

Apache vhosts文件存储在/etc/apache2/sites-available目录中。标准命名约定是根据域命名文件。

打开您的文本编辑器并创建以下文件:

/etc/apache2/sites-available/example.com.conf

<VirtualHost *:80>
    ServerName example.com
    ServerAlias www.example.com
    ServerAdmin webmaster@example.com
    DocumentRoot /var/www/example.com/public_html

    <Directory /var/www/example.com/public_html>
        Options -Indexes +FollowSymLinks
        AllowOverride All
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/example.com-error.log
    CustomLog ${APACHE_LOG_DIR}/example.com-access.log combined
</VirtualHost>

/etc/apache2/sites-available除非将配置文件链接到目录,否则Apache不会读取该目录中的配置文件/etc/apache2/sites-enabled

要激活虚拟主机配置,请使用实用程序创建符号链接a2ensite

sudo a2ensite example.com

使用以下命令测试配置是否存在语法错误:

sudo apachectl configtest

如果没有错误,您将看到以下输出:

Syntax OK

重新启动Apache服务以使更改生效:

sudo systemctl restart apache2

最后,要确认一切正常,请http://yourdomain.com在浏览器中打开,您将看到类似以下内容:

结论

我们已经向您展示了如何在Ubuntu 20.04上安装Apache。现在,您准备开始部署应用程序并将Apache用作Web或代理服务器。

如果您有任何问题或反馈,请随时发表评论。

评论

登录后评论

服务器优惠活动

Top