如何在 Ubuntu 18.04 上安装 Apache Web 服务器
Apache HTTP服务器是一个免费、开源、功能强大、稳定、可靠且使用最广泛的跨平台 Web 服务器,可在类 Unix 系统(如 Linux 和 Windows 操作系统)上运行。它提供许多强大的功能,包括动态可加载模块、强大的媒体支持以及与其他流行软件的广泛集成。它还可以作为其他服务器(例如 Nodejs、Python 等应用程序服务器)的反向代理。
在本文中,我们将解释如何在 Ubuntu 18.04 上安装 Apache Web 服务器。我们还将研究如何通过 systemd 管理 Apache 服务并创建用于设置网站的虚拟主机。
步骤 1:在 Ubuntu 18.04 上安装 Apache
1. Apache 可从官方 Ubuntu 软件存储库获得,首先更新系统的软件包索引,然后使用 APT 包管理器安装 Apache 包以及依赖项。
$ sudo apt update $ sudo apt install apache2
成功安装 Apache Web 服务器后,请记下这些 Apache 重要的默认文件和目录。
- 主配置文件目录:/etc/apache2/。
- 主配置文件:/etc/apache2/apache2.conf。
- 其他配置片段:/etc/apache2/conf-available/和/etc/apache2/conf-enabled/。
- 每个站点虚拟主机配置片段:/etc/apache2/sites-available/和/etc/apache2/sites-enabled/。
- 用于加载模块的配置片段:/etc/apache2/mods-available/和/etc/apache2/mods-enabled/。
- 网络文档根目录:/var/www/html/。
- 日志文件(错误和访问日志)目录:/var/log/apache/。
2. Apache 安装过程完成后,Web 服务器服务应自动启动,您可以使用以下命令检查它是否启动并正在运行。
$ sudo systemctl status apache2
3.现在您的 Apache Web 服务器已启动并运行,让我们使用以下命令来了解一些管理 Apache 服务的基本管理命令。
$ sudo systemctl status apache2 $ sudo systemctl stop apache2 $ sudo systemctl start apache2 $ sudo systemctl restart apache2 $ sudo systemctl reload apache2 $ sudo systemctl enable apache2 $ sudo systemctl disable apache2
4.接下来,如果您的系统上启用并运行了UFW防火墙,则需要打开端口80和443以分别允许客户端通过HTTP和HTTPS向 Apache Web 服务器发出请求,然后使用以下命令重新加载防火墙设置。
$ sudo ufw allow 80/tcp $ sudo ufw allow 443/tcp $ sudo ufw reload
第 2 步:检查 Ubuntu 18.04 上的 Apache Web 服务器
5.现在测试您的 Apache2 安装是否运行良好;打开 Web 浏览器并输入以下 URL 以访问 Apache 默认网页。
http://domain_name/ OR http://SERVER_IP/
如果您看到此页面,则表示您的 Apache Web 服务器运行正常。它还显示有关重要 Apache 配置文件和目录位置的一些基本信息。
注意:如果您想使用虚拟域名(例如example.local
,不是完全注册的域名),您可以使用将访问 Apache 默认网页的机器上的/etc/hosts文件设置本地 DNS。
$ sudo vim /etc/hosts
然后在文件底部添加以下行,确保将192.168.56.101和example.local替换为您的服务器的 IP 地址和本地域名。
192.168.56.101 example.local
步骤 3:在 Ubuntu 18.04 上设置 Apache 虚拟主机
6.接下来,我们将解释如何在 Apache HTTP 服务器中为您的网站创建虚拟主机(类似于Nginx 服务器块)。例如,如果您有一个名为 的网站example.com
,您想使用 Apache 将其托管在您的 VPS 上,则需要在 下为其创建一个虚拟主机/etc/apache2/sites-available/
。
首先为您的域名创建文档根目录example.com
,您的网站文件将存储在该目录中。
$ sudo mkdir -p /var/www/html/example.com/
7.然后如图所示对目录设置适当的权限。
$ sudo chmod -R 775 /var/www/html/example.com/ $ sudo chown -R www-data:www-data /var/www/html/example.com/
8.接下来,在您网站的根目录中为您的网站创建一个测试 html 索引页。
$ sudo vim /var/www/html/example.com/index.html
在里面添加以下示例 HTML 代码。
<html> <head> <title>Welcome to Example.com!</title> </head> <body> <h1>The example.com virtual host is working!</h1> </body> </html>
完成后保存并关闭文件。
9.现在在/etc/apache2/sites-available/目录下为您的网站创建一个example.com.conf
虚拟主机文件。
$ sudo vim /etc/apache2/sites-available/example.com.conf
粘贴以下配置指令,与默认配置指令类似,但更新了新的目录和域名。
<VirtualHost *:80> ServerName example.com ServerAlias www.example.com ServerAdmin webmaster@example.com DocumentRoot /var/www/html/example.com/ ErrorLog ${APACHE_LOG_DIR}/example.com_error.log CustomLog ${APACHE_LOG_DIR}/example.com_access.log combined </VirtualHost>
完成后保存并关闭文件。
10.现在使用a2ensite实用程序启用您的站点配置。
$ sudo a2ensite example.com.conf
11.接下来,测试您的 Apache2 配置是否有任何错误,如果一切正常,请重新启动 apache2 服务,如图所示。
$ sudo apache2ctl configtest $ sudo systemctl restart apache2
12.由于该域名example.com
是虚拟域名(不是完全注册的域名),您还需要通过将其添加到/etc/hosts文件来设置本地 DNS。
$ sudo vim /etc/hosts
然后在文件底部添加以下行,确保将192.168.56.101和example.com替换为您的服务器的 IP 地址和本地域名。
192.168.56.101 example.com
保存文件并退出。
13.最后打开Web浏览器并使用以下URL访问测试站点的索引页,如屏幕截图所示。
http://example.com
就是这样!在本文中,我们解释了如何在 Ubuntu 18.04 上安装 Apache Web 服务器。我们还研究了如何通过 systemd 管理 Aapche2 进程,以及如何创建和启用每个站点的虚拟主机配置。如果您有任何疑问,请使用下面的评论表与我们联系。