如何在Ubuntu 14.04 LTS上设置Apache虚拟主机
这篇文章讲解如何在 Ubuntu 上配置 Apache2 虚拟主机。
准备
安装Apache,具体安装过程可以参考这篇文章 https://www.edoou.com/articles/1560167182571983
第一步 - 创建目录
第一步是创建一个目录结构,该结构将保存为访问者提供的站点数据。
sudo mkdir -p /var/www/example.com/publish_html
sudo mkdir -p /var/www/test.com/publish_html
这里我们设置的域名是example.com
和test.com
第二步 - 设置权限
现在我们有了文件的目录结构,但它们归root用户所有。 如果我们希望我们的常规用户能够修改我们的Web目录中的文件,我们可以通过这样做来更改所有权:
sudo chown -R $USER:$USER /var/www/example.com/public_html
sudo chown -R $USER:$USER /var/www/test.com/public_html
当您按“ENTER”时,$ USER变量将获取您当前登录的用户的值。 通过这样做,我们的常规用户现在拥有public_html子目录,我们将存储我们的内容。 我们还应该稍微修改我们的权限,以确保允许对一般Web目录及其包含的所有文件和文件夹进行读取访问,以便可以正确地提供页面:
sudo chmod -R 755 /var/www
第三步 - 给每个虚拟主机创建演示页面
为example.com
创建页面
vim /var/www/example.com/publish_html/index.html
输入以下内容:
<title>Welcome to Example.com!</title>
<h1>Success! The example.com virtual host is working!</h1>
保存并关闭文件。 复制这个文件到text.com
目录下:
cp /var/www/example.com/public_html/index.html /var/www/test.com/public_html/index.html
打开并修改文件:
vim /var/www/test.com/public_html/index.html
修改为下面的内容:
<title>Welcome to Test.com!</title>
<h1>Success! The test.com virtual host is working!</h1>
保存并关闭文件。
第四步 - 创建新的虚拟主机文件
创建第一个虚拟主机文件
首先复制 000-default.conf
:
sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/example.com.conf
用编辑器打开example.com.conf
sudo vim /etc/apache2/sites-available/example.com.conf
修改为以下内容:
<virtualhost>
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>
创建第二个虚拟主机文件
复制example.com.conf
sudo cp /etc/apache2/sites-available/example.com.conf /etc/apache2/sites-available/test.com.conf
编辑test.com.conf
sudo vim /etc/apache2/sites-available/test.com.conf
修改为以下内容
<virtualhost>
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>
第五步 - 启用新的虚拟主机
运行一下命令,启用新的虚拟主机:
sudo a2ensite example.com.conf
sudo a2ensite test.com.conf
重启apache2服务器:
sudo service apache2 restart