[总结]虚拟主机独立IP与共享IP技术2_共享ip和独立ip设置a记录-程序员宅基地

技术标签: 服务器  虚拟主机  共享IP  软件开发  

四、Apache服务器下的虚拟主机设置技术

1.Apache WWW服务器简介

Apache WWW服务器是目前Internet上使用最广的WWW服务器软件。通过灵活的配置,它可以完成几乎您想得到的功能。本文主要介绍在Apache 下设置各种虚拟主机的方法。

2.Apache WWW服务器下基于IP地址的虚拟主机设置

使用这种虚拟主机方式,首先要在服务器上为每个虚拟主机单独设置一个IP地址。这些IP地址可以通过增加多个网卡或者在一个网卡上设立多个IP地址来完成。有了多个IP地址后,可以采用以下两种方式之一来设置Apache:

a.为每个虚拟主机运行一份Apache。采用这种方式,每一份Apache程序可以以单独的用户运行,因此各个虚拟主机之间互不影响。设置这种虚拟主机时,只要为每一份Apache设置一套配置文件就可以了,唯一需要注意的是:必须使用“Listen”语句,强制每一份Apache 仅仅在属于“自己”的IP地址上接收服务请求。优点:各个虚拟主机之间互不干扰,安全性高。缺点:占用系统资源较多。

b.多个虚拟主机共享同一份Apache。采用这种方式,各个虚拟主机共享同一份Apache,因此各个虚拟主机之间有一定的影响,尤其是执行CGI程序时,可能会带来一些严重的安全问题。设置这种虚拟主机时,只要为每一个虚拟主机设置类似如下的信息即可:

; 
DocumentRoot /home/company1 
… 
;

优点:占用系统资源比上一种方式少。缺点:安全性低,每个虚拟主机仍然需要占用一个IP地址。

3.Apache WWW服务器下简单的基于主机名(域名)的虚拟主机设置

这种方式下,各个虚拟主机共享同一份Apache,因此有CGI程序运行时,安全性也不高。设置这种虚拟主机时,只要为每一个虚拟主机设置类似如下的信息即可:

NameVirtualHost 111.222.33.44 ; 在这个IP地址接收虚拟主机的服务 
; 
ServerName www.company1.com 
DocumentRoot /www/company1 
; 
; 
ServerName www.company2.com 
DocumentRoot /www/company2 
;

优点:只要一个IP地址就可以提供大量的虚拟主机服务。缺点:安全性差。维护这些虚拟主机时需要更改配置文件,并且需要重新启动Apache进程才能起作用。因此不适合进行大规模的虚拟主机服务。

4.Apache WWW服务器下基于主机名的大规模虚拟主机设置

所谓大规模虚拟主机,是指能够提供非常多的虚拟主机服务,比如能提供超过数十万个域名的虚拟主机服务。如果使用以上讨论的方法,是很难完成的。实现这种服务的一种方式是利用Apache 功能强大的URL重写功能。下面以一个实例来说明这种方式。

a.Apache中URL重写功能

Apache 1.2及以后版本都有URL重写(Rewrite)功能。简单的说,URL重写功能就是在Apache接收到请求后,在处理的过程中能根据预先设定的规则,对请求中的URL进行修改。这些规则主要由正规表达式组成。重写依赖于输入的URL、各种服务器端环境变量、HTTP请求头中的内容、时间,甚至可以通过外部的程序来使用数据库中的信息来帮助重写。URL重写功能非常强大,通过URL重写,可以使Apache完成异常复杂的功能。当然,URL重写功能本身也比较复杂,关于URL重写功能的详细说明可以参看Apache 的随机文档。

b.使用Apache中URL重写功能实现基于主机名的大规模虚拟主机设置

假设机器www.home.com提供名字形如abcde.home.com、hijk.home.com等的大规模虚拟主机服务。其中虚拟主机名必须是字母或数字,并且长度至少为3。为了防止一个目录下文件或子目录太多而对性能产生很大的负面影响,对用户的目录按照名字进行分级划分,如虚拟主机abcde.home.com的相关文件存放在目录/member/ab/de/abcde下面。其中“ab”、“de”分别是“abcde”的前边两个字符和最后两个字符。当用户请求http://abcde.home.com时,系统应该返回/member/ab/de/abcde下面的文件。

下面是为了完成这种功能需要进行的设置:

a. 对域名服务器的设置:假设www.home.com的IP地址为202.103.190.57,在域名服务器DNS的home.com数据文件中增加一行:

* IN A 202.103.190.57

这样,所有 *.home.com的IP地址都会被解析为202.103.190.57,就没有必要为各个虚拟主机分别进行设置。

b. 对Apache的设置

首先使用命令“httpd -l”检查mod_rewrite模块是否已经编译到Apache中,如果没有,重新编译Apache。 然后在Apache的配置文件httpd.conf中增加如下语句(其中以“#”开头的为注释):

#禁止使用机器的正式名 
UseCanonicalName off 
#使能重写功能 
RewriteEngine on 
RewriteMap lowercase int:tolower 
# 为安全考虑,对CGI程序不进行重写 
RewriteCond %{REQUEST_URI} !^/cgi-bin/ 
# 对www.home.com不重写,其他的重写 
RewriteCond ${lowercase:%{HTTP_HOST}} !^www\.home\.com(\.*)$ 
RewriteCond ${lowercase:%{HTTP_HOST}} ^[a-z0-9-]+\.home\.com(\.*)$ 
# 首先把机器名改为小写,添加到请求的文件路径前,并继续处理 
RewriteRule ^(.+) ${lowercase:%{HTTP_HOST}}$1 [C] 
# 重写请求 
RewriteRule ^([a-z0-9])([a-z0-9])([a-z0-9])\.home\.com([\.]*)/(.*) /member/$1$2/$2$3/$1$2$3/$5 
RewriteRule ^([a-z0-9])([a-z0-9])([a-z0-9]*)([a-z0-9])([a-z0-9])\.home\.com([\.]*)/(.*) /member/$1$2/$4$5/$1$2$3$4$5/$7

优点:只要一个IP地址就可以提供大量的虚拟主机服务,维护方便。缺点:安全性低。上例为了增强安全性,禁止运行用户自己的CGI程序。

5.Apache WWW服务器下的重定向虚拟主机设置

重定向虚拟主机是指仅仅提供重定向功能,而不实际存放用户主页数据的虚拟主机。比如,某站点有多个镜像服务器,假设为www1.user.com、www2.user.com,…wwwn.user.com。这些服务器放在不同的网络上,分布于各地的客户访问这些服务器的速度也互不相同。而站点www.home.com通过虚拟域名user.home.com为这些镜像的服务器提供虚拟主机服务。当客户访问http://user.home.com时,www.home.com根据用户的IP地址、收集到的网络拓扑结构信息,把客户重定向到对该客户来说访问速度最快的站点。

重定向虚拟主机服务也可以通过使用URL重写功能来完成。这里仅给出简单的重写规则:

RewriteRule ^([a-z0-9]+)\.home\.com([\.]*)/(.*) /www/cgi-bin/nph-redirect.cgi/$1/$3 [T=application/x-httpd-cgi,L] 

其中,nph-redirect.cgi为一个CGI程序,为了实现自动重定向,它需要产生完整的HTTP 应答头信息。该程序通过环境变量PATH_INFO得到用户请求的URL,通过环境变量REMOTE_ADDR得到用户的IP地址,并根据网络拓扑情况生成重定向信息,返回给客户。

参考文献:

Apache 1.3 User's Guide http://www.apache.org

Virtual Hosting Setup Using Apache

Abstract:

There are two types of WWW Virtual Hosting, IP-based and Name-based. Those two types are introduced in this thesis, followed by some methods about WWW Virtual Hosting configuration under Apache and the difference between them is analyzed.

五、虚拟主机设置指南——IIS服务器组建攻略

(Internet Information Server,互联网信息服务)是一种Web(网页)服务组件,其中包括Web服务器、FTP服务器、NNTP服务器和SMTP服务器,分别用于网页浏 览、文件传输、新闻服务和邮件发送等方面,它使得在网络(包括互联网和局域网)上发布信息成了一件很容易的事。本文将向你讲述Windows 2000高级服务器版中自带的IIS 5.0的配置和管理方法。

准备篇 IIS的添加和运行

1.IIS的添加

请进入“控制面板”,依次选“添加/删除程序→添加/删除Windows组件”,将“Internet信息服务(IIS)”前的小钩去掉 (如有),重新勾选中后按提示操作即可完成IIS组件的添加。用这种方法添加的IIS组件中将包括Web、FTP、NNTP和SMTP等全部四项服务。

2.IIS的运行

当IIS添加成功之后,再进入“开始→程序→管理工具→Internet服务管理器”以打开IIS管理器,对于有“已停止”字样的服务,均在其上单击右键,选“启动”来开启。

第一篇 IIS之Web服务器

1.建立第一个Web站点

比如本机的IP地址为192.168.0.1,自己的网页放在D:\Wy目录下,网页的首页文件名为Index.htm,现在想根据这些建立好自己的Web服务器。

对于此Web站点,我们可以用现有的“默认Web站点”来做相应的修改后,就可以轻松实现。请先在“默认Web站点”上单击右键,选“属性”,以进入名为“默认Web站点属性”设置界面。

a.修改绑定的IP地址:转到“Web站点”窗口,再在“IP地址”后的下拉菜单中选择所需用到的本机IP地址“192.168.0.1”。

b.修改主目录:转到“主目录”窗口,再在“本地路径”输入(或用“浏览”按钮选择)好自己网页所在的“D:\Wy”目录。

c.添加首页文件名:转到“文档”窗口,再按“添加”按钮,根据提示在“默认文档名”后输入自己网页的首页文件名“Index.htm”。

d.添加虚拟目录:比如你的主目录在“D:\Wy”下,而你想输入“192.168.0.1/test”的格式就可调出“E:\All”中 的网页文件,这里面的“test”就是虚拟目录。请在“默认Web站点”上单击右键,选“新建→虚拟目录”,依次在“别名”处输入“test”,在“目 录”处输入“E:\All”后再按提示操作即可添加成功。

e.效果的测试:打开IE浏览器,在地址栏输入“192.168.0.1”之后再按回车键,此时就能够调出你自己网页的首页,则说明设置成功!

2.添加更多的Web站点

a.多个IP对应多个Web站点

如果本机已绑定了多个IP地址,想利用不同的IP地址得出不同的Web页面,则只需在“默认Web站点”处单击右键,选“新建→站点”,然 后根据提示在“说明”处输入任意用于说明它的内容(比如为“我的第二个Web站点”)、在“输入Web站点使用的IP地址”的下拉菜单处选中需给它绑定的 IP地址即可(如图1);当建立好此Web站点之后,再按上步的方法进行相应设置。

b.一个IP地址对应多个Web站点

当按上步的方法建立好所有的Web站点后,对于做虚拟主机,可以通过给各Web站点设不同的端口号来实现,比如给一个Web站点设为80, 一个设为81,一个设为82……(如图2),则对于端口号是80的Web站点,访问格式仍然直接是IP地址就可以了,而对于绑定其他端口号的Web站点, 访问时必须在IP地址后面加上相应的端口号,也即使用如“http://192.168.0.1:81”的格式。

很显然,改了端口号之后使用起来就麻烦些。如果你已在DNS服务器中将所有你需要的域名都已经映射到了此惟一的IP地址,则用设不同“主机 头名”的方法,可以让你直接用域名来完成对不同Web站点的访问。比如你本机只有一个IP地址为192.168.0.1,你已经建立(或设置)好了两个 Web站点,一个是“默认Web站点”,一个是“我的第二个Web站点”,现在你想输入“www.enanshan.com”可直接访问前者,输入 “www.popunet.com”可直接访问后者。其操作步骤如下:

(1)请确保已先在DNS服务器中将你这两个域名都已映射到了那个IP地址上;并确保所有的Web站点的端口号均保持为80这个默认值。

(2)再依次选“默认Web站点→右键→属性→Web站点”,单击“IP地址”右侧的“高级”按钮,在“此站点有多个标识下”双击已有的那 个IP地址(或单击选中它后再按“编辑”按钮),然后在“主机头名”下输入“www.enanshan.com”再按“确定”按钮保存退出(如图3)。

(3)接着按上步同样的方法为“我的第二个Web站点”设好新的主机头名为“www.popunet.com”即可。

(4)最后,打开你的IE浏览器,在地址栏输入不同的网址,就可以调出不同Web站点的内容了。

c.多个域名对应同个Web站点

你只需先将某个IP地址绑定到Web站点上,再在DNS服务器中,将所需域名全部映射向你的这个IP地址上,则你在浏览器中输入任何一个域名,都会直接得到所设置好的那个网站的内容。

3.对IIS服务的远程管理

a.在“管理Web站点”上单击右键,选“属性”,再进入“Web站点”窗口,选择好“IP地址”。

b.转到“目录安全性”窗口,单击“IP地址及域名限制”下的“编辑”按钮,点选中“授权访问”以能接受客户端从本机之外的地方对IIS进行管理;最后单击“确定”按钮。

c.则在任意计算机的浏览器中输入如“http://192.168.0.1:3598”(3598为其端口号)的格式后,将会出现一个密 码询问窗口,输入管理员帐号名(Administrator)和相应密码之后就可登录成功,现在就可以在浏览器中对IIS进行远程管理了!在这里可以管理 的范围主要包括对Web站点和FTP站点进行的新建、修改、启动、停止和删除等操作。

4.本部分常见问题解答

Q:在上文中所涉及到的网址中,有的加了“http://”,有的没加,这意味着什么呢?

A:没有加“http://”部分的网址,说明其可加可不加;而加了“http://”部分的,则说明它必不可少!对于带端口号的网址则必须加;否则可省略。

Q:对于上文中涉及到IP地址的网址,可否用比较“友好”的名称来代替呢?

A:可以!它除了能够用IIS服务器所在的计算机名来代替之外,还可在DNS服务器中新建域名和相应IP地址的映射表,就也可以用域名来进行访问了!

Q:我设置好了一个Web服务器,但是当我访问网页时,却出现密码提示窗口。这是为什么?

A:访问Web站点时,出现密码提示窗口,一般来说有以下原因,请逐个去进行检查:

a.所访问的网页文件本身加了密。比如“默认Web站点”原主目录“E:\Inetpub\wwwroot”下的首页文件“iisstart.asp”访问时就需要密码。

b.没有设置允许匿名访问或作了不应该的改动。如图4所示,首先应确保已勾选中了“匿名访问”这一项;并且其下“编辑”中“匿名用户帐号” 中“用户名”一项应为“IUSR_NODISK”(其中“NODISK”为计算机名)的格式;另外,还需要已勾选中“允许IIS控制密码”一项。

c.你的目标目录被限制了访问权限。此项仅当该目录位于NTFS格式分区中时才可能出现。请在其上单击右键,选“属性”,再进入“安全”窗口,看列表中是不是默认的允许“Everyone”组完全控制的状态,如不是,请改回(如图5)。

第二篇 IIS之FTP服务器

1.建立你的FTP站点

第一个FTP站点(即“默认FTP站点”)的设置方法和更多FTP站点的建立方法请参照前文Web服务器中相关操作执行。需要注意的是,如果你要用一个IP地址对应多个不同的FTP服务器,则只能用使用不同的端口号的方法来实现,而不支持“主机头名”的作法。

对于已建立好的FTP服务器,在浏览器中访问将使用如“ftp://192.168.0.1”或是“ftp://192.168.0.1: 22的格式”;除了匿名访问用户(Anonymous)外,IIS中的FTP将使用Windows 2000自带的用户库(可在“开始→程序→管理工具→计算机管理”中找到“用户”一项来进行用户库的管理)。

2.本部分常见问题解答

Q:如何修改FTP服务器登录成功或退出时的系统提示信息?

A:在相应的FTP站点上单击右键,选“属性”,再转到“消息”窗口,在“欢迎”处输入登录成功之后的欢迎信息,在“退出”处输入用户退出时的欢送信息即可(如图6)。

Q:为什么我的FTP服务器建立成功之后,除了管理员(Administrator)和匿名用户(Anonymous)之外,普通用户都不能在本机上登录;可在其他计算机上却能够正常使用。这是为什么?

A:因为默认的,普通用户不具有在本机登录的权限。如果要修改,请进入“开始→程序→管理工具→本地安全策略”中选择“左边框架→本地策略→用户权利指派”,再在右边框架中双击“在本地登录”项,然后将所需的普通用户添加到它的列表中去就行了。

第三篇 IIS之SMTP服务器

如果你嫌互联网上的那些免费邮件发送邮件的速度过慢的话,你或许可以考虑用IIS来建立一个本地的SMTP服务器。不管你是直接连入互联网还是通过局域网接入,不管你是有静态的IP地址还是用动态的IP地址,都可以很轻松地建立成功!

建立IIS下的SMTP服务器的方法非常简单,只需在IIS管理器中让“默认SMTP虚拟服务器”处于已启动状态就行了;此外一般不用再做其他任何设置。
如果你想要用自己的SMTP服务器发信,只需将你E-mail客户端软件设置中“发送邮件服务器(SMTP)”项中填入“localhost”,则不管你的IP地址如何变化,它都能正常工作。

当你使用自己的这个SMTP服务器发送E-mail时,不仅有不受制于人的自由感,更有闪电般的发信速度,是个人SMTP服务器的最佳选择!

六、展望

虚拟主机的发展经历了静态主机-〉动态主机-〉VPS,因其低廉的价格和成熟的技术,为很多个人用户建站所青睐,未来将很有可能继续存在并提供更强大的功能,在技术方面,预计会逐渐使用云计算的虚机服务,提供更强大、可伸缩的计算资源,以满足不同企业级用户的需求。但目前因云虚机资费较高和技术不成熟,传统的虚拟主机技术还有较大的生存空间。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/wauit/article/details/9429947

智能推荐

古典密码技术_了解古典密码的算法 了解古典密码的详细步骤 掌握古典密码的基本原理-程序员宅基地

文章浏览阅读7.4k次,点赞4次,收藏18次。古典密码技术古典密码是密码学中的其中一个类型,其大部分加密方式都是利用替换式密码或移项式密码,有时则是两者的混合。其于历史中经常使用,但在现代由于计算机的出现,使得古典密码解密已经不再困难,已经很少使用,大部分的已经不再使用了。古典密码技术根据其基本原理大体可以分为两类:替换密码技术和换位密码技术。替换密码技术替换密码技术是基于符号替换的密码技术。一般有单字符单表替换密码技术、单字符多表..._了解古典密码的算法 了解古典密码的详细步骤 掌握古典密码的基本原理

liunx中ls -la-程序员宅基地

文章浏览阅读1.4w次,点赞2次,收藏7次。ls 列出目录(文件夹)中的文件和子目录-l 长格式列出-a 显示所有文件,包括隐藏文件和目录(所有以“.”为开始的文件和目录为隐藏文件)所以ls -la 是列出当前目录中的所有文件和目录,包括隐藏文件和目录但不是查看文件里面的内容,查看文件的里的内容用的是more,less,cat等命令_ls -la

Java pta 面对对象(下)_定义一个车辆类(vehicle)和它的一个子类——客车类(bus),具体要求如下:(1)车辆类v-程序员宅基地

文章浏览阅读984次,点赞21次,收藏18次。Java pta 面对对象(下)7-1 定义一个车辆类和它的一个子类——客车类7-2 jmu-Java-03面向对象基础-04-形状-继承_定义一个车辆类(vehicle)和它的一个子类——客车类(bus),具体要求如下:(1)车辆类v

图像处理中常用的彩色模型_cmy-程序员宅基地

文章浏览阅读3.6w次,点赞10次,收藏68次。颜色模型就是描述用一组数值来描述颜色的数学模型。在彩色图像处理中,选择合适的彩色模型是很重要的。从应用的角度来看,彩色模型可分为两类:面向硬件设备的彩色模型面向视觉感知的彩色模型_cmy

计算机毕业设计 SSM+Vue健身房系统 健身会员管理系统 健身俱乐部管理系统 健身会所管理系统 健身预约教练管理系统Java Vue MySQL数据库 远程调试 代码讲解_ssm vue健身管理系统源码百度网盘-程序员宅基地

文章浏览阅读146次。计算机毕业设计 SSM+Vue健身房系统 健身会员管理系统 健身俱乐部管理系统 健身会所管理系统 健身预约教练管理系统_ssm vue健身管理系统源码百度网盘

LangChain - Chain-程序员宅基地

文章浏览阅读771次,点赞20次,收藏25次。1、概览为什么我们需要链?2、快速入门 (Get started) - Using `LLMChain`多个变量 使用字典输入在 `LLMChain` 中使用聊天模型:3、异步 API4、不同的调用方法`__call__`调用仅返回输出键值 return_only_outputs只有一个输出键 run只有一个输入键5、自定义chain6、调试链 (Debugging chains)7、从 LangChainHub 加载8、添加记忆(state)9、序列化将chain 保存到

随便推点

《前端框架开发技术》HTML+CSS+JavaScript 制作个人简历模板-程序员宅基地

文章浏览阅读790次。个人网页设计、‍♂️个人简历制作、简单静态HTML个人网页作品、个人介绍网站模板 、等网站的设计与制作。个人网页设计网站模板采用DIV CSS布局制作,网页作品有多个页面,如 :个人介绍(文字页面)、我的作品(图片列表)、个人技能(图文页面)、在线留言(表单页面)CSS样式方面网页整体采用左右布局结构,制作了网页背景图片,导航区域每个导航背景色不同,导航背景色与页面背景呼应。 一套A+的网页应该包含 (具体可根据个人要求而定)网站布局方面:计划采用目前主流的、能兼容各大...

TailwindCSS为前端开发者带来了什么?_tailwindcss的优点-程序员宅基地

文章浏览阅读2.3k次。什么是Tailwind CSS?Tailwind CSS是一个功能类优先的CSS框架,它集成了flex、text-center这样的类,Tailwind CSS希望实现的是开发者无需离开HTML页面,即可快速创建出各种样式效果。Tailwind CSS相较于其他CSS框架有什么优势?优势1:Tailwind CSS类名具有较好的语义化传统的语义化类名是CSS难以维护的重要原因,也就是说起名很麻烦,但是Tailwind CSS的语义化类名可以很好的解决这个问题,例如:text-lg:表示一个_tailwindcss的优点

python 设置全局变量-程序员宅基地

文章浏览阅读8.2k次,点赞3次,收藏14次。python 设置全局变量,跨文件使用_python 设置全局变量

遍历磁盘_遍历所有移动硬盘-程序员宅基地

文章浏览阅读1.2k次。#include "stdafx.h"#include int main(){ TCHAR buf[MAX_PATH] = {}; int nDriveType; //1 获取磁盘盘符 GetLogicalDriveStrings(MAX_PATH, buf); TCHAR* pDrives = buf; while (_遍历所有移动硬盘

element-ui的隐藏组件el-scrollbar的使用(解决原生滚动条没有隐藏的问题 高宽设置)_el-scrollbar__wrap-程序员宅基地

文章浏览阅读1.3w次,点赞9次,收藏27次。element-ui的官网页面使用的这个滚动条,但是在官网文档中没有介绍这个组件。在vue+elementui搭建的前端项目中使用这个el-scrollbar组件。在项目中使用这个组件时由于各层的样式没有设置好,可能会显示出原生的滚动条,特此记录。搭建脚手架项目,安装element-ui插件按需引入需要的组件import Vue from 'vue'import { Scrollbar} from 'element-ui'Vue.use(Scrollbar)使用<_el-scrollbar__wrap

LabVIEW开发TDS1000 和TDS2000 系列泰克示波器_泰克示波器 labview-程序员宅基地

文章浏览阅读392次,点赞2次,收藏3次。泰克示波器是经常用到的工具,一般手动操作即可,但有时候也要集成到系统中,需要程控。这时候先要下载厂家提供的例子,了解LabVIEW的demo。示波器的功能挺多的,手册也是几百上千页,需要哪些功能,查找对应的部分就可以了。附件给出了LabVIEW的demo,需要的时候可以下载。手册可以到官网上下载,如果查不到,也可以联系厂家在线的技术,他们也会及时提供的。这是LabVIEW的一个功能介绍,更多的使用方法与开发案例,欢迎登录官网,了解更多信息。根据通讯协议的相关的说明,编写了适合项目的程序。_泰克示波器 labview

推荐文章

热门文章

相关标签