手动在Ubuntu 18.04上配置Apache虚拟主机

Aapche配置虚拟主机
Aapche配置虚拟主机

简介

本教程将介绍如何在Ubuntu 18.04服务器上,使用Apache虚拟主机配置多个网站。

准备工作

为了完成本教程,需要在Ubuntu 18.04服务器上具备如下条件:

  • 拥有服务器的sudo用户权限;
  • 已成功安装Apache2 Web服务器。

第1步-创建目录结构

首先,我们需要为配置多域名建立合理的目录结构,不用的目录文件夹用于存储不同域名的网站文件。如下所示,我们为“exampal.com”和“test.com”两个域名,创建两个文件夹。在实际配置中,应该用自己的域名替换下面的两个域名。

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

第2步-授予权限

现在,分别授予apache服务器对两个目录访问权限,以便能够修改文件。

sudo chown -R $USER:$USER /var/www/example.com/public_html
sudo chown -R $USER:$USER /var/www/test.com/public_html

此外,我们要确保允许对常规Web目录及其包含的所有文件夹和文件进行读取。

sudo chmod -R 755 /var/www

步骤3 —为每个虚拟主机创建演示页面

我们在每个网站文件夹内,分别创建一个“index.html”文件,用于页面的演示。使用nano编辑器,执行如下代码:

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

在打开的文件中,将以下内容复制到文件内:

<html>
  <head>
    <title>Welcome to Example.com!</title>
  </head>
  <body>
    <h1>Success! The example.com virtual host is working!</h1>
  </body>
</html>

保存并关闭文件,然后将该文件复制到另外的一个网站文件夹:

cp /var/www/example.com/public_html/index.html /var/www/test.com/public_html/index.html

打开文件并修改相关信息:

nano /var/www/test.com/public_html/index.html

 /var/www/test.com/public_html/index.html

<html>
  <head>
    <title>Welcome to Test.com!</title>
  </head>
  <body> <h1>Success! The test.com virtual host is working!</h1>
  </body>
</html>

保存并关闭此文件。

步骤4 —创建虚拟主机配置文件

Apache自带了一个默认的虚拟主机配置文件,被称为000-default.conf,我们以它作为模板,为我们打算创建的两个网站分别创建虚拟主机配置文件。

创建虚拟主机配置文件

首先,复制000-default.conf内容到新的配置文件example.com.conf:

sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/example.com.conf

对新的配置文件进行编辑:

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

将文件中的example.com替换为自己的域名:

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

<VirtualHost *:80>
    ServerAdmin admin@example.com
    ServerName example.com
    ServerAlias www.example.com
    DocumentRoot /var/www/example.com/public_html
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

保存并关闭文件。

创建另一个虚拟主机配置文件

现在我们已经建立了第一个虚拟主机配置文件,我们可以通过复制该文件内容来创建第二个虚拟主机配置文件。

通过复制以创建第二个配置文件:

sudo cp /etc/apache2/sites-available/example.com.conf /etc/apache2/sites-available/test.com.conf

在编辑器打开新配置文件:

sudo nano /etc/apache2/sites-available/test.com.conf

将文件中对应的域名更改为“test.com”:

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

<VirtualHost *:80>
    ServerAdmin admin@test.com
    ServerName test.com
    ServerAlias www.test.com
    DocumentRoot /var/www/test.com/public_html
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

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

步骤5 —启用新虚拟主机配置文件

创建虚拟主机配置文件后,我们需要启用它们才能生效。执行如下命令:

sudo a2ensite example.com.conf
sudo a2ensite test.com.conf

接下来,禁用默认的配置文件000-default.conf

sudo a2dissite 000-default.conf

完成后,需要重新启动Apache才能使更改生效:

sudo systemctl restart apache2

第6步-测试结果

现在,我们已经完成了配置虚拟主机,可以通过在Web浏览器中访问域名,来验证配置是否成功:

http://example.com

应该可以看到如下所示的页面:

手动在Ubuntu 18.04上配置Apache虚拟主机

如果两个站点都可以正常显示,则说明我们已在同一服务器上成功配置了两个虚拟主机。

原创文章,作者:牛奇网,如若转载,请注明出处:https://www.niuqi360.com/lamp-config/apache-virtual-hosts-on-ubuntu-18-04/

发表评论

登录后才能评论