Ubuntu下为Apache2配置虚拟主机

2022/9/3 5:24:07

本文主要是介绍Ubuntu下为Apache2配置虚拟主机,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

基础知识

apache2的安装目录默认在/etc/apache2,目录结构:

网站目录默认安装在/var/www/html,只有index.html一个文件,访问127.0.0.1时可以看到:

Virtual Hosting(虚拟主机)

 简单说就是同一台服务器可以同时处理超过一个域名(domain)。假设www.example1.net和 www.example2.net两个域名都指向同一服务器,WEB服务器又支持Virtual Hosting,那么www.example1.net和www.example2.net可以访问到同一服务器上不同的WEB空间(网站文件存放目 录)。

配置虚拟主机

1. 选择一个域名,为网站创建一个新的目录。目录名称就是网站名,运行以下命令来执行此操作:

sudo mkdir -p /var/www/bob.com/html

2. 创建一个简单的静态网页。创建 HTML 文件:

sudo vim /var/www/bob.com/html/index.html

粘贴下面内容:

<html>
     <head>
       <title>Simple Page</title>
     </head>
     <body>
       <p>If you're seeing this in your browser then everything works.</p>
     </body>
</html>

保存并关闭文件。

3. 配置目录的所有、读写执行权限:

chown -R www-data:www-data /var/www/bob.com  
chmod -R og-r /var/www/bob.com  # 去除其他用户读权限

4. 为网站创建一个新的虚拟主机。注意,配置文件名称是网站名.conf的格式:

vim /etc/apache2/sites-available/bob.com.conf

粘贴以下内容:

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

这是一个基础的虚拟主机。根据你的设置,你可能需要更高级的 .conf 文件。
在更新所有内容后保存并关闭文件。

5. 前面我们配置好的内容只是“有效”虚拟主机,真正发挥效果的话得放到 /etc/apache2/sites-enabled 文件夹下面。我们可以使用ln命令来建立一对关联文件:

sudo ln -s /etc/apache2/sites-available/bob.com.conf /etc/apache2/sites-enabled/bob.com.conf

谨慎起见,在重启服务前先检查下语法:

sudo apache2ctl configtest

6. 为hosts文件添加网站信息

vim /etc/hosts
首行添加:
127.0.0.1 bob.com
保存、退出

7. 使用以下命令启用虚拟主机:

a2ensite example.com.conf

8. 重启 Apache 以使更改生效:

systemctl restart apache2


这篇关于Ubuntu下为Apache2配置虚拟主机的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程