Fy J
CS专业扫雷学深造学者互联网冲浪一级选手
FRIENDS
jhn

Ubuntu16.04虚拟机+Apache:配置与初步使用

11-24-2020 22:45:50 Apache 云计算与分布式系统
Word count: 1.8k | Reading time: 6min

原创文章,转载、引用请注明出处!


目标

在VMWare Workstation之上安装CentOS或Ubuntu操作系统(或其他操作系统)。为虚拟机环境中运行的CentOS或Ubuntu配置网络使之可以访问互联网。在虚拟机中的CentOS或Ubuntu环境中安装Apache服务,并在宿主机中访问Apache提供的Web服务。为VMWare Workstation、CentOS或Ubuntu系统编写安装和配置手册,其中包括故障提示及使用到的一些Linux命令。

介绍

Apache

Apache HTTP Server(简称Apache)是Apache软件基金会的一个开放源码的网页服务器,可以在大多数计算机操作系统中运行,由于其多平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩展,将Perl/Python等解释器编译到服务器中。

它可以运行在几乎所有广泛使用的计算机平台上。

Vmware Workstation/Fusion

VMware Workstation(中文名“威睿工作站”)是一款功能强大的桌面虚拟计算机软件,提供用户可在单一的桌面上同时运行不同的操作系统,和进行开发、测试 、部署新的应用程序的最佳解决方案。VMware Workstation可在一部实体机器上模拟完整的网络环境,以及可便于携带的虚拟机器,其更好的灵活性与先进的技术胜过了市面上其他的虚拟计算机软件。对于企业的 IT开发人员和系统管理员而言, VMware在虚拟网路,实时快照,拖曳共享文件夹,支持 PXE 等方面的特点使它成为必不可少的工具。

VMware Fusion允许基于Intel的Mac在虚拟机上运行Microsoft Windows,Linux,NetWare或Solaris等操作系统。

过程

环境

本地环境

VMware Fusion

虚拟机环境

  • uname -a:查看内核/操作系统/CPU信息。

  • head -n 1 /etc/issue:查看操作系统版本。

  • cat /proc/cpuinfo:查看CPU信息:四核,编号为0-3。

Apache框架

安装

Apache在Ubuntu的默认软件库中可用,因此将使用传统的软件包管理工具进行安装。

  • sudo apt-get update:更新本地包索引。

  • sudo apt-get install apache2:安装apache2。

如果不进行本地包的更新,在安装Apache时可能会报各种各样的错误,一般都与依赖项有关。

调整防火墙

在测试Apache之前,需要修改防火墙,允许外部访问默认的Web端口。

  • sudo ufw app list:获得防火墙允许的应用程序配置文件列表。可以看到,有三种可用于Apache的配置文件:(1)Apache :此配置文件仅打开端口80(正常,未加密的Web流量);(2)Apache Full:此配置文件打开端口80(正常,未加密的Web流量)和端口443(TLS/SSL加密流量);(3)Apache Secure :此配置文件仅打开端口443(TLS/SSL加密流量)。

  • sudo ufw allow 'Apache Full':允许Apache Full配置文件的传入流量。

  • sudo ufw status:验证防火墙的更改。

如果显示status:inactive,需要sudo ufw enable

检查安装

  • sudo systemctl status apache2:验证安装结果。在上述安装过程结束时,Apache会自动启动默认的Web服务器,所以直接运行该命令就能看到结果,无需使用sudo systemctl start apache2

看到绿色的active(running)证明Apache框架已经正常的安装并启动了。

在虚拟机的浏览器(火狐)键入127.0.0.1(默认),会看到apache的初始网页。

在Apache框架下配置新的站点

新站点配置

  • sudo /etc/init.d/apache2 restart:停止当前的服务器之后再次启动。

重启Apache服务器后,按照以下步骤配置一个新的网点:jfy_test

  • sudo mkdir -p /var/www/jfy_test.com/public_html:第一步是创建目录结构,其中包含将为访客提供的网站数据。document root(Apache寻找内容服务将以此作为根目录)将被设置为/var/www,命名为jfy_test.com。在这个目录下,再创建一个public_html,存放要提供的文件。

  • sudo chown -R $USER:$USER /var/www/jfy_test.com/public_html:上述目录结构为当前虚拟机下root用户所拥有。如果希望普通用户也能够修改web目录中的文件,可以通过chown更改权限。$USER给出当前登录用户的id。

  • sudo chmod -R 755 /var/www:修改当前用户在/var/www下的读取权限。

如果当前用户的权限足够,那么修改权限的这两条指令可以跳过。

  • nano /var/www/jfy_test.com/public_html/index.html:使用nano在第一步给出的目录中创建一个将要展示的网页文件,如下所示:

  • sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/jfy_test.com.conf:虚拟主机文件是指定虚拟主机的实际配置的文件,并指示Apache Web服务器如何响应各种域请求。Apache附带一个默认的虚拟主机文件:000-default.conf。这里,将这个默认的虚拟主机文件复制一份,以要新配置的站点为命名。这样做的目的是方便修改。

  • sudo nano /etc/apache2/sites-available/jfy_test.com.conf:使用nano打开刚才新建的.conf虚拟主机文件,并做如下修改:

  • sudo a2ensite jfy_test.com.conf:使用a2ensite启用新的站点。

  • sudo a2dissite 000-default.conf:使用a2dissite禁用定义的默认站点000-default.conf

上面的两条关于虚拟主机文件指定的指令没有先后。

完成上述操作后,再次重启服务器使上述命令生效。

检查新配置

在虚拟机的浏览器中键入127.0.0.1,就可以看到新配置的站点。

在宿主机中使用虚拟机的ip就可以访问到该站点。

  • ifconfig:查看ip地址。

在宿主机的浏览器(Safari)中键入虚拟机ip172.16.43.132,可以看到新配置的站点。

  • sudo nano /etc/hosts:设置本地主机文件,将请求jfy_test.com发送到172.16.43.132

然后就可以使用www.jfy_test.com来访问站点。

设置本地主机文件不是必选项。

感想

  • Apache这个框架在安装方面还是比较友好的,只要安装过程不报错,一条指令就解决。

  • Linux默认的系统权限并不足以完成上述工作,这一点比较烦。对于这类Unix系统的权限还需要进一步的学习。

  • 可以在虚拟机环境下以预设好的网址来访问站点,但是并没有做到在宿主机上以这个网址做访问。这一步如果能做到的话就更完美了。


参考资料

百度百科:apache: https://baike.baidu.com/item/Apache/6265

百度百科:VMware Workstation: https://baike.baidu.com/item/VMware%20Workstation/9884359?fr=aladdin

百度百科:VMware Fusion: https://baike.baidu.com/item/VMware%20Fusion/5661746?fr=aladdin

如何在Ubuntu 16.04上安装Apache Web服务器: https://www.cnblogs.com/lfri/p/10522392.html

如何设置Ubuntu的16.04截至Apache的虚拟主机: https://www.howtoing.com/how-to-set-up-apache-virtual-hosts-on-ubuntu-16-04/

< PreviousPost
Clang+OpenMP:初步
NextPost >
论文研读:PolyFit
CATALOG
  1. 1. 目标
  2. 2. 介绍
    1. 2.1. Apache
    2. 2.2. Vmware Workstation/Fusion
  3. 3. 过程
    1. 3.1. 环境
      1. 3.1.1. 本地环境
      2. 3.1.2. VMware Fusion
      3. 3.1.3. 虚拟机环境
    2. 3.2. Apache框架
      1. 3.2.1. 安装
      2. 3.2.2. 调整防火墙
      3. 3.2.3. 检查安装
    3. 3.3. 在Apache框架下配置新的站点
      1. 3.3.1. 新站点配置
      2. 3.3.2. 检查新配置
  4. 4. 感想
  5. 5. 参考资料