发布:20140604 Setup Virtual Hosts In Apache On Ubuntu 14.04 LTS

@disylee 发布了
This commit is contained in:
wxy 2014-06-08 11:03:22 +08:00
parent a44b5c370a
commit 7196f8de55

View File

@ -1,58 +1,39 @@
在Ubuntu 14.04 LTS系统中设置Apache虚拟主机 在Ubuntu 14.04 LTS系统中设置Apache虚拟主机
================================================================================ ================================================================================
**虚拟主机**常用于在一个单独的IP地址上提供多个域名的网站服务。如果有人想在单个VPS的单个IP地址运行多个网站这是非常有用的。
**虚拟主机**常用于单独一个IP地址安装多个域名或网站服务。如果有人想在单个VPS的单个IP地址运行多个网站这是非常有用的。
在这个教程中让我告诉你如何设置在Ubuntu 14.04 LTS的Apache网页服务器设置虚拟主机。请注意这个教程只针对Ubuntu14.04的32位版本。 在这个教程中让我告诉你如何设置在Ubuntu 14.04 LTS的Apache网页服务器设置虚拟主机。请注意这个教程只针对Ubuntu14.04的32位版本。
我不能提出任何保证它也可以工作在其它更低的Ubuntu版本或者Ubuntu衍生物。
我不保证它也可以工作在其它更低的Ubuntu版本或者Ubuntu衍生版本虽然可能过程是类似的
###方案### ###方案###
在这个教程中我会使用Ubuntu 14.04 32位 LTS并搭建2个测试网站分别命名为“**unixmen1.local**” 和 “**unixmen2.local**”.我的测试机分别为**192.168.1.250/24**和**server.unixmen.local**。你可以根据你的需要更改虚拟域名。 在这个教程中我会使用Ubuntu 14.04 32位 LTS并搭建2个测试网站分别命名为“**unixmen1.local**” 和 “**unixmen2.local**”.我的测试机分别为**192.168.1.250/24**和**server.unixmen.local**。你可以根据你的需要更改虚拟域名。
###安装Apache网站服务器### ###安装Apache网站服务器###
安装apache服务器之前我们来更新一下我们的Ubuntu服务器 安装apache服务器之前我们来更新一下我们的Ubuntu服务器
sudo apt-get update sudo apt-get update
然后用下面命令来安装apache网络服务器
现在用下面命令来安装apache网络服务器
sudo apt-get install apache2 sudo apt-get install apache2
安装apache服务器之后让我们通过这个URL **http://ip-address/**来测试网站服务器是否正常工作 安装apache服务器之后让我们通过这个URL **http://你的服务器的IP地址/** 来测试网站服务器是否正常工作
![](http://180016988.r.cdn77.net/wp-content/uploads/2014/06/Apache2-Ubuntu-Default-Page-It-works-Mozilla-Firefox_001.png) ![](http://180016988.r.cdn77.net/wp-content/uploads/2014/06/Apache2-Ubuntu-Default-Page-It-works-Mozilla-Firefox_001.png)
如你所见apache服务器已经工作了。
像你所看到以上的图片apache服务器正在工作。
###设置虚拟主机### ###设置虚拟主机###
#### 1.创建虚拟目录 ## #### 1.创建虚拟目录 ##
现在让我们继续安装虚拟主机。正如我先前所述我要新建2台虚拟主机分别命名为“**unixmen1.local**”和“**unixmen2.local**”. 现在让我们继续安装虚拟主机。正如我先前所述我要新建2台虚拟主机分别命名为“**unixmen1.local**”和“**unixmen2.local**”.
创建一个公用的文件夹来存放这两台虚拟主机的数据。 创建一个公用的文件夹来存放这两台虚拟主机的数据。
首先让我们为unixmen1.local这个站点创建一个目录 首先让我们为unixmen1.local这个站点创建一个目录
sudo mkdir -p /var/www/unixmen1.local/public_html sudo mkdir -p /var/www/unixmen1.local/public_html
@ -61,42 +42,30 @@
sudo mkdir -p /var/www/unixmen2.local/public_html sudo mkdir -p /var/www/unixmen2.local/public_html
### 2. 设置所有者和权限 #### ### 2. 设置所有者和权限 ####
上面目录现在只有root拥有权限。我们需要修改这2个目录的拥有权给普通用户而不仅仅是root用户。 上面目录现在只有root拥有权限。我们需要修改这2个目录的拥有权给普通用户而不仅仅是root用户。
sudo chown -R $USER:$USER /var/www/unixmen1.local/public_html/ sudo chown -R $USER:$USER /var/www/unixmen1.local/public_html/
sudo chown -R $USER:$USER /var/www/unixmen2.local/public_html/ sudo chown -R $USER:$USER /var/www/unixmen2.local/public_html/
“**$USER**”变量显示了当前的登录用户。 “**$USER**”变量指向了当前的登录用户。
设置读写权限给apache网页根目录/var/www及其子目录这样每个人都可以从目录中读取文件。
设置读写权限给apache网页根/var/www)目录,这样每个人都可以从目录中读取文件。
sudo chmod -R 755 /var/www/ sudo chmod -R 755 /var/www/
这样,我们就创建好了一些文件夹来保存网络相关数据并分配必要的权限和所属用户。
#### 4. 为虚拟主机创建示例页 ####
我们需要创建一些文件夹来保存网络相关数据并分配必要的权限和所属用户 现在,我们给网站增加示例页。第一步,让我们给虚拟主机**unixmen1.local**创建一个示例页
给unixmen1.local虚拟主机创建一个示例页
#### 4. 为虚拟主机创建例页 ####
现在,我们必须通过网站示例样页。第一步,让我们给虚拟主机窗机一个名为**unixmen1.local**的样页。
给unixmen1.local虚拟主机创建一个目录
sudo vi /var/www/unixmen1.local/public_html/index.html sudo vi /var/www/unixmen1.local/public_html/index.html
添加以下内容:
添加一下内容:
<html> <html>
<head> <head>
@ -110,12 +79,12 @@
保存并关闭文件。 保存并关闭文件。
同样的,添加页到第二台虚拟主机。 同样的,添加示例页到第二台虚拟主机。
sudo vi /var/www/unixmen2.local/public_html/index.html sudo vi /var/www/unixmen2.local/public_html/index.html
添加下内容: 添加下内容:
<html> <html>
<head> <head>
@ -128,23 +97,20 @@
保存并关闭文件。 保存并关闭文件。
#### 5. 创建虚拟主机文件#### #### 5. 创建虚拟主机配置文件####
默认情况下apache有一个默认的虚拟主机文件叫000-default.conf。我们将会复制**000-default.conf**文件内容到我们新的虚拟主机配置文件中。
默认情况下apache有一个默认的虚拟主机文件叫000-default.conf.我们将会复制**000-default.conf**文件内容到我们新的虚拟主机文件中。
sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/unixmen1.local.conf sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/unixmen1.local.conf
sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/unixmen2.local.conf sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/unixmen2.local.conf
确保虚拟主机配置文件末尾包含.conf扩展名。
确保虚拟主机文件包含.conf扩展名在内容的最后。 现在修改unximen1.local.conf文件以符合需求。
现在修改unximen1.local.conf文件以呈现新的值。
sudo vi /etc/apache2/sites-available/unixmen1.local.conf sudo vi /etc/apache2/sites-available/unixmen1.local.conf
使相关的变化直接呈现在unixmen1站点中译注以“#”开头的注释行可以忽略。)。
使相关的变化直接呈现在unixmen1站点中。
<VirtualHost *:80> <VirtualHost *:80>
# The ServerName directive sets the request scheme, hostname and port that # The ServerName directive sets the request scheme, hostname and port that
@ -183,7 +149,6 @@
sudo vi /etc/apache2/sites-available/unixmen2.local.conf sudo vi /etc/apache2/sites-available/unixmen2.local.conf
使相关的修改在unixmen2 站点呈现出来。 使相关的修改在unixmen2 站点呈现出来。
<VirtualHost *:80> <VirtualHost *:80>
@ -219,40 +184,32 @@
</VirtualHost> </VirtualHost>
修改虚拟主机文件后,使默认的虚拟主机000.default.conf)不生效,然后使新的虚拟主机生效,如下所示。 修改虚拟主机文件后,禁用默认的虚拟主机配置000.default.conf),然后启用新的虚拟主机配置,如下所示。
sudo a2dissite 000-default.conf sudo a2dissite 000-default.conf
sudo a2ensite unixmen1.local.conf sudo a2ensite unixmen1.local.conf
sudo a2ensite unixmen2.local.conf sudo a2ensite unixmen2.local.conf
最后重启apache服务器。 最后重启apache服务器。
sudo service apache2 restart sudo service apache2 restart
就是这样。现在我们成功地配置了apach虚拟主机在我们的Ubuntu服务器上 就是这样。现在我们成功地配置了apach虚拟主机在我们的Ubuntu服务器上
###测试虚拟主机###
测试虚拟主机
编辑**/etc/hosts**文件, 编辑**/etc/hosts**文件,
sudo vi /etc/hosts sudo vi /etc/hosts
如下所示挨个添加虚拟域名。 在文件末尾添加如下所示的虚拟域名。
[...]
192.168.1.250 unixmen1.local 192.168.1.250 unixmen1.local
192.168.1.250 unixmen2.local 192.168.1.250 unixmen2.local
保存并关闭文件。 保存并关闭文件。
打开你的浏览器并访问**http://unixmen1.local** 或 **http://unixmen2.local**。你将会看到我们之前创建的示例页。
打开你的浏览器并指向**http://unixmen1.local** 或 **http://unixmen2.local**链接。你将会看到我们之前创建的样页。
**Unixmen1.local 测试页:** **Unixmen1.local 测试页:**
@ -263,7 +220,7 @@
![](http://180016988.r.cdn77.net/wp-content/uploads/2014/06/www.unixmen2.local-Mozilla-Firefox_005.png) ![](http://180016988.r.cdn77.net/wp-content/uploads/2014/06/www.unixmen2.local-Mozilla-Firefox_005.png)
如果你想从你的远程系统访问这些站点你需要在你的DNS服务器添加实际域名记录。因此,我不需要人和实际域名和DNS服务器我只想通过我的本地系统测试那么它刚好如我所愿地工作。 如果你想从你的远程系统访问这些站点你需要在你的DNS服务器添加实际域名记录。不过,我没有真实的域名和DNS服务器我只想通过我的本地系统测试那么它刚好如我所愿地工作。
Cheers Cheers
@ -271,6 +228,6 @@ Cheers
via: http://www.unixmen.com/setup-virtual-hosts-apache-ubuntu-14-04-lts/ via: http://www.unixmen.com/setup-virtual-hosts-apache-ubuntu-14-04-lts/
译者:disylee(https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) 译者:[disylee](https://github.com/disylee) 校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出