有时候我们只有一台服务器,大家都知道一个域名对应着一个IP地址,一个IP地址或多个IP地址对应的是一个服务器的网站目录。如果用域名直接访问的话不管怎样都只能访问到一个网站的根目录,其它放在服务器的网站只能靠层级去访问,这样就达不到我们所要的效果。下面就介绍一下如何解决这个问题,用域名访问同一台服务器下的不同网站目录,可以节约我们服务器的网站资源。
首先我们有一个域名 xxx.com;(注,两个一级域名不相同也可以)
使用域名解析服务,添加记录,记录类型 A,主机记录priject和movie,记录值为主机的IP地址。
这样我们有两个二级域名 priject.xxx.com 和 movie.xxx.com
现在假设输入priject.xxx.com 和 movie.xxx.com分别直接访问两个网站。
IIS服务器虚拟主机配置方法
1、在IIS中添加网站
其中 绑定一栏中的主机名为 priject.xxx.com,在分配好网站的文件路径
2、添加isapi筛选器
其中可执行文件位置为php的安装位置
3、处理程序映射->添加脚本映射
4、最后重启IIS服务器,就可以用域名访问了
再添加站点,同样的步骤。
tomcat服务器虚拟主机配置方法
在Engine节点下增加host节点
<Host name="priject.xxx.com" appBase="webapps/priject"
unpackWARs="true" autoDeploy="true">
<!-- SingleSignOn valve, share authentication between web applications
Documentation at: /docs/config/valve.html -->
<!--
<Valve className="org.apache.catalina.authenticator.SingleSignOn" />
-->
<!-- Access log processes all example.
Documentation at: /docs/config/valve.html
Note: The pattern used is equivalent to using pattern="common" -->
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log." suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
</Host>
<Host name= "movie.xxx.com" appBase="webapps/movie"
unpackWARs="true" autoDeploy="true">
<!-- SingleSignOn valve, share authentication between web applications
Documentation at: /docs/config/valve.html -->
<!--
<Valve className="org.apache.catalina.authenticator.SingleSignOn" />
-->
<!-- Access log processes all example.
Documentation at: /docs/config/valve.html
Note: The pattern used is equivalent to using pattern="common" -->
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log." suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
</Host>
注在webapps目录下的movie要创建ROOT目录才可以,而且ROOT必须大写。在ROOT目录先放置jsp代码。
在浏览器输入http://priject.xxx.com:8080 http://movie.xxx.com:8080
8080为tomcat的默认端口,修改为80的话就不用在网址后缀加8080了
tomcat会根据主机名称自动寻找相应的网站目录去访问。
apache服务器虚拟主机配置方法
打开httpd.conf文件
去掉LoadModule vhost_alias_module modules/mod_vhost_alias.so
这句前面的#号
和
Include conf/extra/httpd-vhosts.conf这句前面的#号
Include conf/extra/httpd-vhosts.conf这句在httpd.conf文件底部
然后打开Apache2.2\conf\extra下的httpd-vhosts.conf文件,加入如下代码
#配置自己的虚拟主机
<VirtualHost *:80>
#网站目录,如果在www目录下的php目录,下面 #就填写F:/www/php
DocumentRoot "D:/www/网站目录"
#域名
ServerName priject.xxx.com
#这里配置欢迎首页面
DirectoryIndex index.html index.htm index.php
<Directory />
Options FollowSymLinks
#不允许别人修改我们的页面
AllowOverride None
#设置访问权限
order allow,deny
Allow from all
</Directory>
</VirtualHost>
<VirtualHost *:80>
#网站目录,如果在www目录下的php目录,下面 #就填写F:/www/php
DocumentRoot "D:/www/网站目录"
#域名
ServerName movie.xxx.com
#这里配置欢迎首页面
DirectoryIndex index.html index.htm index.php
<Directory />
Options FollowSymLinks
#不允许别人修改我们的页面
AllowOverride None
#设置访问权限
order allow,deny
Allow from all
</Directory>
</VirtualHost>
相关推荐
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。