文档章节

在Ubuntu 14.04 LTS系统中设置Apache虚拟主机

anziguoer
 anziguoer
发布于 2014/06/08 20:02
字数 1295
阅读 115
收藏 6
点赞 0
评论 0

方案

在这个教程中,我会使用Ubuntu 14.04 32位 LTS,并搭建2个测试网站分别命名为“unixmen1.local” 和 “unixmen2.local”.我的测试机分别为192.168.1.250/24server.unixmen.local。你可以根据你的需要更改虚拟域名。

安装Apache网站服务器

安装apache服务器之前,我们来更新一下我们的Ubuntu服务器:

sudo apt-get update

然后,用下面命令来安装apache网络服务器:

sudo apt-get install apache2

安装apache服务器之后,让我们通过这个URL http://你的服务器的IP地址/ 来测试网站服务器是否正常工作

如你所见,apache服务器已经工作了。

设置虚拟主机

1.创建虚拟目录

现在,让我们继续安装虚拟主机。正如我先前所述,我要新建2台虚拟主机分别命名为“unixmen1.local”和“unixmen2.local”.

创建一个公用的文件夹来存放这两台虚拟主机的数据。

首先,让我们为unixmen1.local这个站点创建一个目录:

sudo mkdir -p /var/www/unixmen1.local/public_html

接着,为for unixmen2.local站点创建一个目录:

sudo mkdir -p /var/www/unixmen2.local/public_html

2. 设置所有者和权限

上面目录现在只有root拥有权限。我们需要修改这2个目录的拥有权给普通用户,而不仅仅是root用户。

sudo chown -R $USER:$USER /var/www/unixmen1.local/public_html/sudo chown -R $USER:$USER /var/www/unixmen2.local/public_html/

$USER”变量指向了当前的登录用户。

设置读写权限给apache网页根目录(/var/www)及其子目录,这样每个人都可以从目录中读取文件。

sudo chmod -R 755 /var/www/

这样,我们就创建好了一些文件夹来保存网络相关数据并分配必要的权限和所属用户。

4. 为虚拟主机创建示例页

现在,我们给网站增加示例页。第一步,让我们给虚拟主机unixmen1.local创建一个示例页。

给unixmen1.local虚拟主机创建一个示例页,

sudo vi /var/www/unixmen1.local/public_html/index.html

添加以下内容:

<html> <head> <title>www.unixmen1.local</title> </head> <body> <h1>Welcome To Unixmen1.local website</h1> </body></html>

保存并关闭文件。

同样的,添加示例页到第二台虚拟主机。

sudo vi /var/www/unixmen2.local/public_html/index.html

添加以下内容:

<html> <head> <title>www.unixmen2.local</title> </head> <body> <h1>Welcome To Unixmen2.local website</h1> </body></html>

保存并关闭文件。

5. 创建虚拟主机配置文件

默认情况下,apache有一个默认的虚拟主机文件叫000-default.conf。我们将会复制000-default.conf文件内容到我们新的虚拟主机配置文件中。

sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/unixmen1.local.confsudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/unixmen2.local.conf

确保虚拟主机配置文件末尾包含.conf扩展名。

现在,修改unximen1.local.conf文件以符合需求。

sudo vi /etc/apache2/sites-available/unixmen1.local.conf

使相关的变化直接呈现在unixmen1站点中(译注:以“#”开头的注释行可以忽略。)。

<VirtualHost *:80>        # The ServerName directive sets the request scheme, hostname and port that        # the server uses to identify itself. This is used when creating        # redirection URLs. In the context of virtual hosts, the ServerName        # specifies what hostname must appear in the request's Host: header to        # match this virtual host. For the default virtual host (this file) this        # value is not decisive as it is used as a last resort host regardless.        # However, you must set it for any further virtual host explicitly.        #ServerName www.example.com         ServerAdmin webmaster@unixmen1.local        ServerName unixmen1.local        ServerAlias www.unixmen1.local        DocumentRoot /var/www/unixmen1.local/public_html         # Available loglevels: trace8, ..., trace1, debug, info, notice, warn,        # error, crit, alert, emerg.        # It is also possible to configure the loglevel for particular        # modules, e.g.        #LogLevel info ssl:warn         ErrorLog ${APACHE_LOG_DIR}/error.log        CustomLog ${APACHE_LOG_DIR}/access.log comb
        # For most configuration files from conf-available/, which are        # enabled or disabled at a global level, it is possible to        # include a line for only one particular virtual host. For example the        # following line enables the CGI configuration for this host only        # after it has been globally disabled with "a2disconf".        #Include conf-available/serve-cgi-bin.conf</VirtualHost>

修改虚拟主机文件后,禁用默认的虚拟主机配置(000.default.conf),然后启用新的虚拟主机配置,如下所示。

sudo a2dissite 000-default.confsudo a2ensite unixmen1.local.confsudo a2ensite unixmen2.local.conf

最后,重启apache服务器。

sudo service apache2 restart

就是这样。现在,我们成功地配置了apach虚拟主机在我们的Ubuntu服务器上

测试虚拟主机

编辑/etc/hosts文件,

sudo vi /etc/hosts

在文件末尾添加如下所示的虚拟域名。

192.168.1.250   unixmen1.local192.168.1.250   unixmen2.local

保存并关闭文件。

打开你的浏览器并访问http://unixmen1.localhttp://unixmen2.local。你将会看到我们之前创建的示例页。

如果你想从你的远程系统访问这些站点,你需要在你的DNS服务器添加实际域名记录。不过,我没有真实的域名和DNS服务器,我只想通过我的本地系统测试,那么它刚好如我所愿地工作。

本文转载自:http://linux.cn/article-3164-1.html

共有 人打赏支持
anziguoer

anziguoer

粉丝 27
博文 77
码字总数 34793
作品 0
海淀
程序员
官方正式发布 Ubuntu 14.04 ,下载及改进内容

Ubuntu 14.04 正式版已经发布了,下载地址:http://www.oschina.net/news/50895/ubuntu-14-04-lts 14.04 包含诸多新特性和改进以及软件包的升级,下面是服务器版本和桌面版本的改进内容说明。...

oschina
2014/04/18
8.8K
13
composer laravel 环境搭建

安装Composer PHP包管理工具 官网: ttps://getcomposer.org packagist.org 中文网: http://www.phpcomposer.com 建议使用国内用户使用 中文网镜像, 具体参考: http://pkg.phpcomposer.com/ (...

黑狗007
2015/10/19
508
0
如何在 Ubuntu 上安装和优化 Apache

这是我们的 LAMP 系列教程的开始:如何在 Ubuntu 上安装 Apache web 服务器。 这些说明适用于任何基于 Ubuntu 的发行版,包括 Ubuntu 14.04、 Ubuntu 16.04、 Ubuntu 18.04,甚至非 LTS 的 ...

05%
05/25
0
0
Drupal8系列(三):安装和初始化设置-Ubuntu 14.04 LTS

一、Drupal8的安装 1、搭建环境 由于我们已经安装好了Drush,所以安装Drupal8就会显得十分的简单。但首先还是要先搭建环境: 安装tasksel软件包 sudo apt-get install tasksel 安装LAMP服务(...

firehare
2014/07/31
0
0
Drupal7核心安装篇-Ubuntu 14.04 LTS

在Ubuntu下安装Drupal7十分方便,最方便的方式当然是 sudo apt-get install drupal7 但是Ubuntu 的Drupal7包相对于官方下载来说做了相当大的调整,所以安装倒是简单了,但学习起来比较费心费...

firehare
2014/04/28
0
0
再见绿咬鹃,Ubuntu 12.10 将结束生命周期

本周,我们即将迎来Ubuntu 14.04 LTS正式版,同时也不得不告别Ubuntu 12.10。开源厂商Canonical将于本周4月17日分别宣布两项事项,即上市Ubuntu 14.04 LTS正式版、结束Ubuntu 12.10生命周期。...

oschina
2014/04/16
5.4K
49
ubuntu环境下docker安装步骤

本问是根据docker官方文档翻译,原文:https://docs.docker.com/engine/installation/linux/ubuntulinux/ Docker 支持以下 Ubuntu 系统: Ubuntu Xenial 16.04 (LTS) Ubuntu Wily 15.10 Ubunt......

豆花饭烧土豆
2016/12/03
16
0
VirtualBox 使用 NAT 方式网络的 SSH 连接

在Ubuntu 14.04上亲测解决问题。 本文的 VirtualBox 是基于 Windows 平台环境,虚拟机中安装了 Ubuntu,即在 Windows 平台下通过 SSH 方式连接虚拟机中的 Ubuntu。   一直以来都使用 Virt...

SBaof
2015/08/06
0
0
Ubuntu server 14.04升级16.04

自从ubuntu官网发布ubuntuserver 16.04 LTS 以来企业对这个版本的系统即为的关注,现在的一些企业还在使用的是14.04或者15.04的版本,因为16.04在功能上和在安全上有很大的改进和更新,所以公司...

安好52199
2017/01/16
0
0
Ubuntu 的 openssl 安全问题提醒 USN-2192-1

openssl 安全漏洞 新发现一个影响 Ubuntu 和其衍生版本的安全问题,影响的版本包括: Ubuntu 14.04 LTS Ubuntu 13.10 Ubuntu 12.10 Ubuntu 12.04 LTS 概括 OpenSSL 在接收到某些特殊的网络流...

oschina
2014/05/07
2K
3

没有更多内容

加载失败,请刷新页面

加载更多

下一页

jquery获取当前日期并且格式化

1.制定Format规则 //时间格式化问题Date.prototype.Format = function (fmt) { var o = { "M+": this.getMonth() + 1, //月份 "d+": this.getDate(), //日 ......

gulf
4分钟前
0
0
Spring5(Java8版本)中的反射工具类和注解工具类

1.反射工具类 学习反射时很好的反射教程.这个工具类是基于Java8的。 package org.springframework.util;import java.lang.reflect.Constructor;import java.lang.reflect.Field;imp...

hutaishi
5分钟前
0
0
java io

Java IO在实际开发中的应用 http://www.cnblogs.com/ldh-better/p/7158658.html

小鱼吃大鱼
5分钟前
0
0
初见 react(当 React 版本是 ^16.2.0,当前时间 2018-01-12)

最近一段时间在零零碎碎地看 react 。在此,向所有自学 react 的朋友点个赞。多说一句,在自学道路上一定要戒骄戒躁,坚持下来。-----因为自学过程真的是心累啊(不同版本的博客不同的说法)...

秋季长青
6分钟前
0
0
grub2要启动整个iso的菜单命令如下

grub2要启动整个iso的菜单命令如下 menuentry "启动 Deepin OS Live System" --class deepin { set isofile=/DeepinOS.iso search -f --no-floppy --set=root $isofile set gfxpayload=keep ......

ziluopao
13分钟前
1
0
vue如何使用富文本编辑器wangEditor及图片上传

html定义一个装编辑器的DIV <template> <div id="editor"></div></template> npm安装wangEditor npm install wangeditor --save /wangeditor需要小写/ vue页面导入wangEditor import......

心鑫
16分钟前
0
0
乐观锁

最近公司一个项目中会遇到一个用户记录被多次插入的情况。其实在保存之前先判断有没有的。 觉得可以采用乐观锁机制来解决问题。 JPA之@Version进行乐观锁并发更新 使用JPA实现乐观锁 spring...

miaojiangmin
19分钟前
1
0
flowable 清除流程部署缓存

flowable 或者activity 修改流程图后 需要重启服务器。此文档可解决不用重启服务器,直接干货 public class DeploymentCacheCmd implements Command<Deployment>, Serializable { priv...

装死的乌龟
24分钟前
0
1
安装APK报错 INSTALL_FAILED_TEST_ONLY终极解决方案

1、检查\app\src\main\AndroidMainfest.xml中是否有testOnly属性为true,如果有去掉或者改为false 2、检查Android Studio和gradle版本是否为alpha版本,换为稳定版本 3、检查是否关闭Instant...

harukong
27分钟前
0
0
并发插入引发的死锁问题排查

一.业务背景 我们现在的业务是一款数据产品,有不少实时计算和爬取来的数据都汇总到大数据仓库、数据挖掘平台ODPS上。然后应用在读取这些数据时,这些数据会先导入到并发读能力更强,适合结构...

tantexian
29分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部