如何在 Ubuntu 20.04 上安装 Apache

2023-05-16

 简介: Apache 是世界上最流行的网站服务器之一。它是开源并且跨平台的 HTTP 服务器,它托管了互联网上大量的网站。Apache 提供了很多强大的功能,并且可以扩展其他的模块。本文主要为大家介绍如何在 Ubuntu 20.04 上安装和管理 Apache 网站服务器。

1.png


镜像下载、域名解析、时间同步请点击 阿里巴巴开源镜像站

Apache 是世界上最流行的网站服务器之一。它是开源并且跨平台的 HTTP 服务器,它托管了互联网上大量的网站。Apache 提供了很多强大的功能,并且可以扩展其他的模块。
这篇文章描述了如何在 Ubuntu 20.04 上安装和管理 Apache 网站服务器。

一、前提条件

在开始安装之前,要确保你以 sudo 权限用户身份登录。

二、安装 Apache

Apache 被包含在默认的 Ubuntu 软件源中。
安装非常直接。在 Ubuntu 和 Debian 系统中,Apache 软件包和服务被称为 apache2
运行下面的命令来更新软件包索引,并且安装 Apache:

sudo apt update
sudo apt install apache2

当安装过程完成,Apache 服务将会被自动启动。
你可以通过输入下面的命令,验证 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)。你需要在防火墙打开那些端口,以便网站服务器从互联网上是可以访问的。
假设你正在使用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 欢迎页面,如图所示:

2.png


这个页面包含了 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文件:

<!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虚拟主机配置文件存储在/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>

Apache 不会读取/etc/apache2/sites-available文件夹下的配置文件,除非它们被链接到/etc/apache2/sites-enabled文件夹。
想要激活虚拟主机配置,使用a2ensite创建一个链接:

sudo a2ensite example.com

测试配置文件,是否有任何语法错误:

sudo apachectl configtest

如果没有任何错误,你将会看到下面的输出:

Syntax OK

重启 Apache 服务,使修改生效:

sudo systemctl restart apache2

最终,想要验证一切都按照预期工作,在你的浏览器中打开[http://example.com](http://example.com),你将会看到类似下面的图片:

3.png

六、总结

至此,我们已经向你展示了如何在 Ubuntu 20.04 上安装 Apache。你现在可以开始部署你的应用,并且将 Apache 用作网站或者代理服务器了。

 本文转自:如何在 Ubuntu 20.04 上安装 Apache-阿里云开发者社区

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 Ubuntu 20.04 上安装 Apache 的相关文章

  • 摄像机内参、外参矩阵

    摄像机矩阵由P由内参矩阵和外参矩阵组成 xff0c 对摄像机矩阵进行QR分解可以得到内参矩阵和外参矩阵 在opencv的3D重建中 xff08 opencv中文网站中 xff1a 照相机定标与三维场景重建 xff09 xff0c 对摄像机的
  • 几个简单的数据点平滑处理算法

    最近在写一些数据处理的程序 经常需要对数据进行平滑处理 直接用FIR滤波器或IIR滤波器都有一个启动问题 xff0c 滤波完成后总要对数据掐头去尾 因此去找了些简单的数据平滑处理的方法 在一本老版本的 数学手册 中找到了几个基于最小二乘法的
  • 陶哲轩实分析 3.5 节习题试解

    3 5 1 第一种定义 xff1a x y 61
  • C++ 中的 std::pair 和 std::tuple

    C 43 43 中的 std pair 和 std tuple 最近在看 C 43 43 11 的标准 xff0c 发现了 std pair 和 std tuple 感觉这两个非常有用 就在这里记录一下 std pair 出现的比较早 xf
  • OpenCV 真圆度测量

    OpenCV 真圆度测量 最近一个项目需要在图像上测量一些小孔的真圆度 因此专门研究了一下真圆度计算问题 对于一个轮廓 xff0c 我们可以求出这个轮廓的外接圆和内切圆 这两个圆的半径差定义为真圆度 这个数值越小 xff0c 表示这个圆越标
  • 如何修改 CentOS 系统最大线程数

    简介 xff1a 本文主要介绍如何修改CentOS系统最大线程数 镜像下载 域名解析 时间同步请点击 阿里巴巴开源镜像站 1 安装ElasticSearch后 xff0c 配置完成 xff0c 启动服务 xff0c 系统显示类似如下 max
  • MathJax 支持的 Latex 符号总结(各种箭头符号)

    箭头符号 latex显示效果 uparrow downarrow Uparrow Downarrow updownarrow Updownarrow rightarrow
  • C++ 复制构造函数不能用 explicit 修饰

    最近在写的一个代码 出现个莫名其妙的编译问题 代码可以简化成这样 xff1a class foo span class hljs keyword public span span class hljs title foo span span
  • FreeRTOS 源码注释(vTaskDelete)

    void vTaskDelete xTaskHandle pxTaskToDelete tskTCB pxTCB taskENTER CRITICAL if pxTaskToDelete 61 61 pxCurrentTCB pxTaskT
  • 循环冗余校验(CRC)算法入门引导

    写给嵌入式程序员的循环冗余校验 xff08 CRC xff09 算法入门引导 前言 CRC校验 xff08 循环冗余校验 xff09 是数据通讯中最常采用的校验方式 在嵌入式软件开发中 xff0c 经常要用到CRC 算法对各种数据进行校验
  • FreeRTOS 移植要点(2)

    port c port c 中主要实现了几个函数 xff1a pxPortInitialiseStack xPortStartScheduler vPortEndScheduler vPortYield vPortTickInterrupt
  • DLA (扩散限制凝聚)模型的计算机模拟

    几年前写的一个小程序 xff0c 最近找到了 程序写的比较简单 xff0c 也没做什么优化 对正在学习计算物理的同学可能会有点帮助 下面关于DLA 模型的介绍来自百度百科 Diffusion limited Aggregation xff0
  • matlab 读取处理 wav 文件

    最近工作需要 xff0c 要对wav 文件中存储的声音信息进行分析处理 所以花了些时间收集了各种数学软件中处理 wav 文件的方法 Matlab Matlab 是最方便的 甚至于不用写任何代码就能读取 wav 文件 xff08 我用的是 m
  • Savitzky-Golay 滤波器

    Savitzky Golay滤波器 xff08 通常简称为S G滤波器 xff09 最初由Savitzky 和 Golay 于 1964 年提出 xff0c 发表于Analytical Chemistry 杂志 之后被广泛地运用于数据流平滑
  • 关于查看ros中可以安装的功能包

    可以通过以下命令查看软件库中是否包含你所需要的功能包 apt cache search xxxx 其中xxx为你要搜索的关键字
  • 教你如何用原生css和html搭建一个好看的Table表格

    前言 大家在学习 lt table gt 标签的时候 xff0c 可能还没有接触css xff0c 所以你做出来的表格可能是这样的 xff1a 或者是这样的 xff1a 大家有想过自己做一个漂亮的表格吗 xff1f 我知道大家在做项目的时候
  • 如何在 Ubuntu 20.04 启用 SSH

    简介 xff1a Secure Shell SSH 是一个网络协议 xff0c 它主要被用来加密客户端和服务端之间的连接 在客户端和服务端的每一次交互都被加密 本文主要为大家讲解如何在 Ubuntu 20 04 启用 SSH 镜像下载 域名
  • 树莓派镜像SD卡烧录成功磁盘没内容解决方法

    这个情况很可能是删除分区后发生的 xff0c 只需要此电脑 管理 磁盘管理 驱动器路径 添加 确定就可以解决了
  • C++ 类学习总结(五) 继承与多态

    继承 基本概念 xff0e 基类 xff1a 可供其他类继承的类 xff0c 基类的成员也将成为派生类的成员 xff0e 派生类 xff1a 从基类继承而来的类 xff0c 称为派生类 xff0e 虚函数 xff1a 基类中希望其派生类可以
  • 行业术语 英文

    IDE 一般指集成开发的环境 如QT Creator Visual Studio等 Application framework 一般指的是应用程序框架 xff08 包含 XML xff0c GUI组件 xff0c 程序 xff0c 网络框架

随机推荐

  • VSCode C/C++ 格式化配置【最完整准确版本】

    一 下载Clang format 1 在VSCode插件商店下载 C C 43 43 插件 和 Clang format 插件 二 生成 clang format 文件 2 去到 C Users lt 你的用户名 gt vscode ext
  • 【时间规划】C/C++发展之路--读书

    0 xff1a 图书馆的N本C xff0c C 43 43 书 1 xff1a C语言深度解剖 2 xff1a 高质量C 43 43 c编程指南 3 xff1a C 43 43 primer第四版 4 xff1a Windows程序设计 5
  • 【Cocos2d-x】Win7+ vs2012,2010 + Cocos2d-x2.2 配置Cocos2d-X项目-环境

    新安装搭建cocos2d X的跳过这里 xff0c 看下面红色开始 xff1a cocos2d x删除vs2012项目模板 这一步新使用cocos2d x的不需要 如果你切换cocos2d x版本的话 xff0c 要将之前版本的vs模板删除
  • 【Cocos2d-x】Cocos2d-x参考案例源码解析之一:Cocos2dx各个文件说明

    这里本人电脑配置是win7 64位 xff0c cocos2d x2 20 xff0c VS2012 1 xff1a 首先当然是下载cocos2d x啦 我采用的是2 20版本 说明 xff1a 2 14以后的版本和之前的VS模板生成和环境
  • 【Cocos2d-x】Cocos2d-x参考案例源码解析之三:HelloWorld

    允许我讲些与源码无关的事情 xff01 稍后K我 由于cocos2dX3 0快出来了 xff0c 官网上说放弃objective c风格 xff0c 本屌学的是C 43 43 xff0c 所以真是太高兴了 xff0c 所以放慢的源码解析 x
  • 【Cocos2d-x】Cocos2d-x跨Android平台搭建之四:Win7 64位+ eclipse + cocos2dX

    开始研究cocos2dx xff0c mark一下这个的配置步骤 1 下载eclipse 2 下载android sdk xff0c 配置sdk路径 xff0c 添加环境变量 3 安装adt 4 下载android ndk xff0c 配置
  • 【网络通信】Wince 和 PC 通过USB 用Socket 进行通信

    网上资料比较少或者说讲的不太详细 xff0c 现在进行总结下 xff0c 刚毕业没接触过WINce xff0c 不过和MFC差不多 xff0c 现在进入正题 刚开始我的疑惑是Wince是如何和PC进行通信的 xff0c 以及能在USB模式下
  • 如何在 Ubuntu 20.04 上添加交换空间

    简介 xff1a 本文主要为大家讲解如何在 Ubuntu 20 04上添加并激活一个交换空间 镜像下载 域名解析 时间同步请点击 阿里巴巴开源镜像站 交换空间是硬盘上的一个空间 xff0c 当物理 RAM 内存被用尽时 xff0c 被紧急征
  • VScode+Sphinx+ReadTheDocs 从环境搭建到放弃

    概述 此篇博客用来记录在windows10中配置环境的过程 xff0c 注意是Windows下 xff0c 我没有在Linux下面尝试过配置 一下参考了各路教程加上自己亲测 xff0c 应该是没有问题的 被掏空 目录 概述 目录材料清单工具
  • 分布式游戏服务器设计

    分布式游戏服务器设计 服务器解释整体设计图网关服务器网络连接消息处理权限管理业务支持消息路由 登录服务器网络连接用户注册用户登录 中心服务器用户管理消息推送全局功能 游戏服务器数据读取数据落地消息处理 存储服务器工作模式数据一致性 依赖系统
  • Ubuntu 更新apt源及apt常用命令

    Ubuntu 更新apt源及常用命令 替换apt国内源更新软件包信息可更新的包信息更新所有包安装编译必备安装软件包查找软件包名查找包含文件的软件包名列出软件包的所有文件删除软件包 替换apt国内源 执行以下命令 span class tok
  • UUID/GUID介绍、生成规则及生成代码

    UUID GUID介绍 生成规则及生成代码 1 UUID介绍1 1 介绍1 2 UUID优势1 3 UUID劣势 2 UUID版本2 1 版本1 基于时间的UUID2 1 1优点2 1 2 缺点2 1 3 生成规则 2 2 版本2 分布式安
  • Linux开启root远程密码ssh登录

    Linux开启root远程密码ssh登录 登录修改root密码登录root修改sshd配置重启sshd服务 登录 先使用pubkey登录到普通用户 修改root密码 然后执行以下命令更新root密码 span class token fun
  • Windows安装go-python环境--使用golang执行python3

    Windows安装go python环境 目的项目路径安装python3 7 9安装包便携版 安装pkg config新增PC文件安装TMD GCC添加环境变量安装go python测试不兼容接口 目的 在go中使用C API调用CPyth
  • Github自动构建及推送DockerHub

    Github自动构建及推送DockerHub DockerHub Automated BuildsGithub 官方免费方法 DockerHub Automated Builds DockerHub需要付费才能自动绑定Github构建 米多
  • VMware Workstation 与 Device/Credential Guard 不兼容

    VMware Workstation 与 Device Credential Guard 不兼容 问题出现问题的原因解决方案第一步 打开 基于虚拟化的安全设置为 已禁用 第二步 win 43 R 打开运行 xff0c 输入services
  • TortoiseGit拉取远端Gerrit公钥不识别问题

    Gerrit与TortoiseGit公钥不识别问题 现象解决办法 现象 远程repo使用Gerrit服务器本地使用TortoiseGit客户端id rsa pub 已经设置到远端服务器git clone正常拉取TortoiseGit客户端拉
  • Windows Docker Desktop开放API端口2375用于远程调用

    Windows Docker Desktop开放API端口2375用于远程调用 问题解决开启IP Helper服务开启Docker配置开放2375端口 端口映射找到需要暴露的IP执行端口映射命令 Windows防火墙关闭防火墙添加防火墙规则
  • Linksys WRT路由器刷入OpenWrt与原厂固件双固件及切换

    Linksys路由器OpenWrt与原厂固件双固件刷入及切换 双固件机制使用原厂固件刷其他固件使用原厂固件切换启动分区使用OpenWrt刷入Sysupgrade使用OpenWrt刷入Img使用OpenWrt切换分区通用的硬切换分区 xff0
  • 如何在 Ubuntu 20.04 上安装 Apache

    简介 xff1a Apache 是世界上最流行的网站服务器之一 它是开源并且跨平台的 HTTP 服务器 xff0c 它托管了互联网上大量的网站 Apache 提供了很多强大的功能 xff0c 并且可以扩展其他的模块 本文主要为大家介绍如何在