如何在 Ubuntu 18.04 上安装 Apache 网络服务器 [快速入门]

介绍

Apache HTTP 服务器是世界上使用最广泛的 Web 服务器,它提供了许多强大的功能,包括动态可加载的模块,强大的媒体支持,以及与其他流行的软件的广泛集成。

在本指南中,您将在 Ubuntu 18.04 服务器上安装 Apache Web Server. 对于本教程的更详细版本,请参阅 如何在 Ubuntu 18.04 上安装 Apache Web Server

前提条件

在你开始这个指南之前,你应该有以下几点:

  • Ubuntu 18.04 服务器和有 sudo 特权的常规非 root 用户. 此外,您还需要启用基本防火墙来阻止非必不可少的端口。 您可以通过遵循我们的 Ubuntu 18.04 初始服务器设置指南来学习如何配置常规用户帐户并为您的服务器设置防火墙。

当你有一个帐户可用时,登录作为你的非根用户开始。

步骤 1 - 安装 Apache

Apache 可在 Ubuntu 的默认软件存储库中使用,您可以使用传统的包管理工具来安装。

更新您的本地包索引:

1sudo apt update

安装apache2包:

1sudo apt install apache2

第2步:调整防火墙

查看可用的ufw应用程序配置文件:

1sudo ufw app list
1[secondary_label Output]
2Available applications:
3  Apache
4  Apache Full
5  Apache Secure
6  OpenSSH

启用最限制的配置文件,仍然允许您配置的流量,允许在端口 `80 (正常,未加密的网络流量) 上流量:

1sudo ufw allow 'Apache'

检查变化:

1sudo ufw status
1[secondary_label Output]
2Status: active
3
4To Action From
5--                         ------      ----
6OpenSSH ALLOW Anywhere                  
7Apache ALLOW Anywhere                  
8OpenSSH (v6)               ALLOW Anywhere (v6)             
9Apache (v6)                ALLOW Anywhere (v6)

步骤3 - 检查您的Web服务器

通过systemd init 系统检查,以确保服务正在运行,输入:

1sudo systemctl status apache2
 1[secondary_label Output]
 2 apache2.service - The Apache HTTP Server
 3   Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
 4  Drop-In: /lib/systemd/system/apache2.service.d
 5           └─apache2-systemd.conf
 6   Active: active (running) since Tue 2018-04-24 20:14:39 UTC; 9min ago
 7 Main PID: 2583 (apache2)
 8    Tasks: 55 (limit: 1153)
 9   CGroup: /system.slice/apache2.service
10           ├─2583 /usr/sbin/apache2 -k start
11           ├─2585 /usr/sbin/apache2 -k start
12           └─2586 /usr/sbin/apache2 -k start

访问默认的 Apache 定位页面以确认软件通过您的 IP 地址正确运行:

1http://your_server_ip

您应该看到默认的Ubuntu 18.04 Apache网页:

Apache default page

步骤 4 — 设置虚拟主机(推荐)

在使用Apache Web 服务器时,您可以使用 virtual hosts(类似于 Nginx 中的服务器块)来封装配置细节并从单个服务器中托管多个域。

创建your_domain目录:

1sudo mkdir /var/www/your_domain

授予董事会的所有权:

1sudo chown -R $USER:$USER /var/www/your_domain

如果您尚未修改解除面罩值,您的 Web 根的权限应该是正确的,但您可以通过键入来确保:

1sudo chmod -R 755 /var/www/your_domain

使用nano或您喜爱的文本编辑器创建一个样本index.html页面:

1nano /var/www/your_domain/index.html

内部,添加以下样本HTML:

1[label /var/www/your_domain/index.html]
2<html>
3    <head>
4        <title>Welcome to Your_domain!</title>
5    </head>
6    <body>
7        <h1>Success!  The your_domain virtual host is working!</h1>
8    </body>
9</html>

保存并关闭文件,当你完成。

创建一个新的虚拟主机文件在 /etc/apache2/sites-available/your_domain.conf:

1sudo nano /etc/apache2/sites-available/your_domain.conf

添加以下配置块,更新以包括你的新目录和域名,而不是 your_domain:

1[label /etc/apache2/sites-available/your_domain.conf]
2<VirtualHost *:80>
3    ServerAdmin webmaster@localhost
4    ServerName your_domain
5    ServerAlias your_domain
6    DocumentRoot /var/www/your_domain
7    ErrorLog ${APACHE_LOG_DIR}/error.log
8    CustomLog ${APACHE_LOG_DIR}/access.log combined
9</VirtualHost>

保存并关闭文件,当你完成。

使用a2ensite启用您的虚拟主机文件:

1sudo a2ensite your_domain.conf

禁用在000-default.conf中定义的默认网站:

1sudo a2dissite 000-default.conf

测试配置错误:

1sudo apache2ctl configtest

你应该看到以下结果:

1[secondary_label Output]
2Syntax OK

重新启动 Apache 以实现更改:

1sudo systemctl restart apache2

你可以通过导航到http://your_domain,在那里你应该看到这样的东西:

Apache virtual host example

结论

现在,您已经安装了 Apache Web 服务器,您有许多选择,用于服务的内容类型和您想要使用的技术来创建更丰富的体验。

如果您想构建一个更完整的应用程序堆栈,请参阅本文中的 如何在Ubuntu 18.04上配置LAMP堆栈

Published At
Categories with 技术
comments powered by Disqus