云服务器 | 小白建站笔记之 多站点配置

如果你购买了一个云服务器,那么你一定不满足于只是在上面建一个网站。云服务器的功能很强大,最近流行的小程序完全可以挂载在云服务器上。本文将从修改Apache服务文件 httpd.conf 出发,手把手教你如何在一个服务器上建立多个网站域名指向。

图文 / 丁建雄

小白是单纯为兴趣而写作的独立创作人,如果您喜欢小白的文章,欢迎关注、交流、分享(引用请链接到本文)。

最真挚的 总是陪伴 By [Jaromír Chalabala](https://500px.com/chalabala)

多站点配置概念

还是从最基本的入手,先弄清楚我们的目的是什么?

我们购买了一个云服务器之后,供应商会提供给我们一个公网IP地址,比如:115.159.107.214

这个IP地址其实是我们云服务器专属的IP入口,外部网络访问这个IP地址其实访问的是云服务器上特定的入口文件。比如,在CentOS系统的Apache服务器端,默认的服务器入口文件URL为 /var/www/html/index.html

一般来讲,如果我们只是建立一个网站,那么只要在相应的文件夹下面存入我们需要展示的网页就行了。但是,更多时候,我们可能对这个服务器配置有更多的要求,比如挂载多个网站。

举个例子,我们现在有两个域名:sample1.com 和 sample2.com ,我们想要达到的效果是:输入不同的域名,打开不同的网站(其实也就是对应于不同的服务器入口文件)。

要达到这样的效果,有哪些可行的思路呢?

复杂的就不提了,简单的配置方式主要有两种:

  • 将同一个IP的不同端口映射到不同的虚拟主机,即不同端口映射到不同的站点;
  • 将同一个端口映射成不同的域名,即不同的域名映射到不同的站点。

根据域名分配的多站点配置

大家可以简单理解上述两种情况:根据端口划分、根据域名名称划分。

在Windows平台下面的多站点配置,推荐大家参考 刘亚壮博客专栏 。他这边的配置方式也是按照这两种方法来实现的,写得很详细(虽然有些步骤我认为是不必要的,但是没有错误的步骤,他的方法能走通)。本文的配置环境是CentOS。

本文主要介绍的是第二种情况。小白认为,由于外部网络是主要通过域名访问的,因此,虽然两种方法都能走通,但是第二种方法却是最接近真实状况的。下面就跟着小白的步伐一步步完成这个多站点的配置任务吧!

第一步:找到 httpd.conf 配置文件

文件所处位置 /etc/httpd/conf 这个是最关键的,不要找错了,网上有很多博客写的地址是错误的,或者系统环境不同,要对号入座。

第二步:下载 httpd.conf 并打开

小白使用的云服务器文件管理工具是 FileZilla ,这其实是一个FTP下载上传工具(至于如何FTP登陆云服务器,各位请自行百度啦~)。

filezilla界面

找到远程站点 下的 httpd.conf 文件,然后下载到本地站点

下载完成后,右键选择打开方式——使用记事本或者 Notepad++ 打开。

第三步:修改 hpptd.conf 配置文件

配置文件比较长,将配置文件翻页到最后,可以看到一些说明文字:

VirtualHost 说明文档

这里面从 section3 开始,就是多站点配置的说明文件。这里面给出了一个参考的示例:

#<VirtualHost *:80>
#    ServerAdmin webmaster@dummy-host.example.com
#    DocumentRoot /www/docs/dummy-host.example.com
#    ServerName dummy-host.example.com
#    ErrorLog logs/dummy-host.example.com-error_log
#    CustomLog logs/dummy-host.example.com-access_log common
#</VirtualHost>

这里面是比较完整的示例,其实,对于小白来讲,有些参数文件大部分时候不需要,因此可以稍作精简,只留下必不可少的部分,便于大家理解。

回到之前的问题:

我们现在有两个域名:sample1.com 和 sample2.com* ,我们想要达到的效果是:输入不同的域名,打开不同的网站*

下面是最精简代码:

NameVirtualHost *:80

<VirtualHost *:80>
    DocumentRoot /var/www/html/sample1  #指定sample1网站文件存放目录
    ServerName  sample1.com          #指定访问域名为sample1.com
</VirtualHost>

<VirtualHost *:80>
    DocumentRoot /var/www/html/sample2  #指定sample2网站文件存放目录
    ServerName  sample2.com             #指定访问域名为sample2.com
</VirtualHost>

将这些代码直接复制到 httpd.conf 文件最后即可。

在这里,大家应该发现了,小白这边跟官方文档相比少了很多东西,但是,亲测功能项目一个不少,大家可以放心使用(如果有需要详细log文件的小伙伴,也可以按照官方文档补齐哦,文件夹自己定义即可)

第四步:上传修改后的配置文件

将现在的 httpd.conf 文件上传到之前下载的位置,并覆盖原始文件,刷新服务器。

请注意!还没好!

很多博客里面都漏掉了一点,那就是需要重启 Apache 服务,重启 Apache 服务的指令是:

service httpd restart

这个是需要在CentOS命令窗口登录的,小白在Windows上使用的登录工具是 Putty(官网上不去了,这里能下载)。

服务重启之后,在浏览器里面输入这两个域名,就可以链接到相对应的网站了。

OK,大功告成!

故事分享

小白在学习这块的时候,一直被卡着,尝试了很多种博客大神的办法,都没能成功。

前前后后看了几十篇文章,也看过官方参考文献。

后来,搁置了几个月之后,在前一篇文章学习文件上传的时候,得到刷新 的启发,才想到或许是相似的可能的原因。

后来,在一个论坛里面,有人提到,最后还需要重启 Apache 服务最终才能大功告成。

一试,成功了!

看来,很多时候,大家做一件事,很多人做了前99%,但是总是忽略那最后的1%。所以大家都能了解,却鲜有人能真正做成功。做成一件事并不难,要善始善终,而不能光说不做。心中有货,却不能将想法变成现实,那想法终究只是空想,这也是我现在做这件事的意义。

技术帖,不到关键时刻,没人会愿意去看,而往往技术帖都是雪中送炭。这么多年下来,享用了前辈们的成果,现在也该留下点东西了。

那些最真挚的东西,总是在你最落魄的时候,依然如故守护在你身边的。

参考文献
Apache_Virtual Hosts
刘亚壮博客专栏
Jaromír Chalabala

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 199,271评论 5 466
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 83,725评论 2 376
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 146,252评论 0 328
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,634评论 1 270
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,549评论 5 359
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 47,985评论 1 275
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,471评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,128评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,257评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,233评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,235评论 1 328
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,940评论 3 316
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,528评论 3 302
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,623评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,858评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,245评论 2 344
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 41,790评论 2 339

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,559评论 18 139
  • 1、第八章 Samba服务器2、第八章 NFS服务器3、第十章 Linux下DNS服务器配站点,域名解析概念命令:...
    哈熝少主阅读 3,690评论 0 10
  • http协议及Apache服务 http协议 什么是http? http全称为超文件传输协议(Hyper text...
    魏镇坪阅读 2,239评论 0 1
  • 零落成泥春渐往, 轻摆霓裳, 羞见凌波荡。 祝余不忍念扶桑。 梦回嗔叹白日长。 山水重重空悲怆。 指尖微凉, 便烹...
    小郎猫阅读 500评论 0 1
  • 当群组里发起这样互相采访的活动时,内心是懵逼的。 平时在群里就很少冒泡,以往的作业也都是自说自话,写给自己看的一些...
    冷冷无常阅读 254评论 3 6