Categories


Tags


云主机环境搭建教程之搭建全能主机

感谢拼一把博客的投稿:

很多站长在购买虚拟主机的时候,会看虚拟主机的一些参数,其中最重要的就是支持的程序语言。现在很多IDC商家都在宣称全能主机。

最好笑的一个事情就是,笔者刚建站的时候,购买了国内一家小主机商的虚拟主机,他们宣传就是全能主机,什么语言都支持。这样的幌子去骗一些菜鸟还可以,对于一个懂技术的,就只能对他们的伎俩投以鄙视的眼光。后来询问之后,才知道他们所谓的全能主机,也就仅仅只支持PHP和ASP同时运行(使用IIS运行PHP),连ASP.net都不支持,对于这事,笔者还和他们理论了半天,现在估计再也不敢宣称全能主机了,这样的商家,希望所有站长都能远离,太没有道德了。

云主机环境搭建教程之搭建全能主机 主机 建站教程 第1张

首先说说,什么是全能主机。

所谓的全能主机,就是一台服务器上面同时支持多个不同的应用服务器运行,并且能通过外部独立域名访问的主机。这里的多个,要至少大于等于三个。

因为目前来讲,Apache,IIS,Tomcat是目前被广泛使用的三种Web服务器软件,其中Apache,tomcat是开源软件,不仅用于Unix系统,也有基于Win32平台的版本。

IIS是Windows操作系统自带的组件,也提供了强大的Internet和Intranet服务功能。这三种服务器软件各有特色,IIS对ASP+Access的支持比较好,而Apache是PHP+MySQL平台不二的选择,Tomcat是运行java语言程序的服务器。

大家都知道,http只有一个开放端口,就是80端口。外部通过独立域名访问网站的时候,如果不加端口,会默认访问服务器中80端口下面的网站。很现实,这几个应用服务器不可能只用一个端口。如果要访问,则必须通过域名加端口号才能访问,这样显然不利于推广。因此,我们就需要想办法让用户输入简单域名,而我们在后台截获域名,然后动态的解析到不同的端口网站上。

按照这样的思路,笔者想了很多办法,传统的就是重新配置IIS,使其支持PHP+MySQL,或者重新配置Apache使其能支持ASP+Access。但考虑到这两种方法虽然从技术上都能够实现,但配置过程较复杂,不易于推广,不利于初学者使用。况且如果你还搭建了java程序,那就更复杂了。

笔者也没有从事过IDC行业的工作,没有这方面的经验。同时也在思考现在那些全能功能是如何实现的。根据笔者的经验,他们是有一个80端口的服务器做代理分发,将不同的域名分发到不用的应用服务器的网站上。

通过这样的思路,笔者想到了使用Apache的虚拟主机功能和反向代理模块来实现。

什么是Apache虚拟主机。

在apache的官方技术网站上是这样定义的。

虚拟主机指的是在单一机器上运行多个网站 (例如 www.company1.com 和 www.company2.com) 。 虚拟主机可以“基于 IP”,即每个 IP 一个站点; 或者“基于名称”, 即每个 IP 多个站点。这些站点运行在同一物理服务器上的事实不会明显的透漏给最终用户。

Apache 是第一个支持基于 IP 的虚拟主机的服务器。 Apache 版本 1.1 和更新的版本同时支持基于 IP 和基于名称的虚拟主机。 基于名称的虚拟主机有时候称为基于主机或非 IP的虚拟主机。

详细地址:http://httpd.apache.org/docs/2.2/vhosts/

注:本文是基于名称的虚拟主机配置。

什么是反向代理。

反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个web服务器。

那么我们就将Apache服务器做为一个代理web服务器,用它来处理从外部访问过来的任何请求并且返回给外部。

有兴趣的朋友可以了解下什么是正向代理。

名词术语大概介绍完了,那么本文主要通过一个例子来为大家简述配置的具体方法。

前言:

仍然以笔者的www.bxw001.com这个域名为例。这个网站是一个ASP+Access网站,建立在IIS6.0下,端口设置为81。如果不使用反向代理,则用户访问这个网站时,必须使用www.bxw001.com:81 才能正常访问,很麻烦。

通过反向代理设置后,用户仍然使用www.bxw001.com域名网站,但首先会进入到Apache服务器,然后再调转到IIS下的正式网站去。

设置步骤如下:

1、加载Apache的代理模块

打开httpd.conf文件,放开以下几行代码的注释,(将前面的#去掉即可),此时Apache就是一个web代理服务器了。

LoadModule proxy_module modules/mod_proxy.so

LoadModule proxy_connect_module modules/mod_proxy_connect.so

LoadModule proxy_http_module modules/mod_proxy_http.so

LoadModule proxy_ftp_module modules/mod_proxy_ftp.so

2、建立虚拟主机,进行端口重定向

为需要代理的网站建立一个虚拟主机,在此笔者强烈建议,都通过虚拟主机来单独配置。有些朋友可能直接在httpd.conf文件里修改,这样虽然也能实现,但是所有的访问,包括不是代理域名的访问都会进入被代理的网站去。

因为Apache虚拟主机的加载顺序是按照顺序来加载的,如果访问的url配置了虚拟主机,则进行代理访问,如果没有,默认是以第一个的。

因此,需要引入虚拟主机单独的配置文件,在这里面增加虚拟主机配置。

在httpd.conf文件中找到这行代码,Include conf/extra/httpd-vhosts.conf,去掉#注释。

以下关于虚拟主机的配置都在httpd-vhosts.conf下进行。

默认Apache提供了两个样例,不用管,直接注释掉,或者在原来上面修改也可以。

我们是要将站点www.bxw001.com  域名的所有访问转向IIS下面的81端口,先增加一个虚拟主机。代码如下:

<VirtualHost *:80>

ServerAdmin webmaster@a.com

DocumentRoot “d:/wwwroot/www.bxw.com”

ServerName bxw001.com

ServerAlias www.bxw001.com

ErrorLog “logs/bxw001.com.log”

CustomLog “logs/bxw001.com.log” common

Require all granted

</Directory>

ProxyPass / http://www.bxw001.com:81/

ProxyPassReverse / http://www.bxw001.com:81/

</VirtualHost>

解释:

ServerAdmin:这个就是邮箱,可以默认

DocumentRoot:这个是你被代理的网站的根目录地址。我们这就是IIS6.0下面的ASP网站目录。注意目录斜杠的方向。

ServerName :被代理的域名,这里就是你IIS下ASP网站的独立域名。

ServerAlias:同上,别名,一般可以写成一级或者二级域名。

ErrorLog :日志文件地址和名称。一般以域名作为文件名,方便区分,默认存放在apache的logs目录下。

设置虚拟主机的目录的访问权限。笔者建议权限的设定都在虚拟主机下单独设置,而不是在httpd.conf中统一设置成所有都可以访问,这样不安全。

ProxyPass :这个是关键,表示IIS下面ASP网站的真实访问地址,这里写成localhost,也可以写成域名+端口,这要看你在IIS设置的主机头地址了。如果主机头默认,那么这里就是localhost。

ProxyPassReverse :反向代理地址,返回给用户的信息。

同时不要忘记在所有虚拟主机的一开始位置,增加默认虚拟主机配置。

<VirtualHost *:80>

ServerAdmin prograsliu@gmail.com

DocumentRoot "D:/wamp/www"

ServerName localhost

ServerAlias localhost

Options FollowSymLinks

AllowOverride All

Order allow,deny

Allow from all

</Directory>

</VirtualHost>

这个默认,你可以设置成Apache的www目录。

以上两步操作完成后,保存后重启Apache服务。你可以试着访问ASP网站的域名,不要加端口号,看看是否可以正常访问了。

如果要增加多个IIS网站或者JAVA网站,只要按照上面的步骤2中的代码增加虚拟主机即可,同时将代理域名写成你需要被代理的网站的URL即可。

通过这样操作,就可以完美实现一个全能主机了,你可以随便在服务器上搭建多个不同环境的网站了。更多关于主机配置与问题的解决文章,请继续关注本博客。

来源:卢松松博客


Public @ 2019-06-29 16:13:45

西部数码云主机/VPS安全建议

尊敬的西部数码用户:目前互联网黑客入侵事件频发,很多客户安全意识不高,被黑客入侵非常普遍。黑客入侵可能带来网站被挂病毒、木马,数据被黑客删除,黑客利用服务器对外攻击别人,占用服务器的磁盘和带宽等等。为了提高您所使用主机的安全性,建议您做好系统安全,提升安全防护意识:系统安全:1.设置较为复杂的主机密码,建议8位数以上,大小写混合带数字、特殊字符,不要使用123456、password等弱口令。2.

Public @ 2019-07-07 16:13:23

Windows Server 2008 IIS的备份和还原

Windows Server 2008 IIS的备份和还原流程如下: 备份: 1. 打开IIS Manager,选中要备份的应用程序池或站点。 2. 在右侧“操作”区域中,选择“导出配置”。 3. 在“导出配置向导”中,选择要保存的文件名和位置,并单击“下一步”。 4. 在“选择要导出的配置设置”页上,选择“所有”或只选择需要备份的设置。 5. 单击“下一步”,并在“导出文件电子邮件报

Public @ 2023-06-25 18:50:17

云服务器和VPS的区别

1.硬件架构不同:云服务器采用的是分布式的物理服务器,而VPS采用的是虚拟化技术,在一个物理服务器上虚拟出多个独立的虚拟服务器。 2.资源分配方式不同:云服务器可以根据实际需求自由分配计算资源、存储资源和带宽等资源,而VPS则是在一个物理主机中划分出一定的资源给虚拟服务器使用,资源分配比较固定。 3.扩展性不同:云服务器的扩展性强,可以根据实际业务需求随时增加或减少计算资源,而VPS则受限于物

Public @ 2023-06-06 23:00:14

阿里云服务器如何选择及使用体验!

我们作为一个站长,互联网之路一路走来起来不知道需要经历多少的坎坎坷坷才走到今天,今天就讲互联网建站之路之其中重要需要掌握技术之一“阿里云服务器”,给大家说一说我使用过的阿里云服务器的一些经验吧。也顺便说下阿里云服务器价格表这块,到底需要多少钱,怎样的配置更适合个人站长及企业网站。阿里云服务器如何选择及使用体验! 服务器 阿里云 网站 互联网 好文分享 第1张我本人在前几天自己开始做网站的时候,因为

Public @ 2019-01-13 16:13:44

更多您感兴趣的搜索

0.597772s