服务器之家:专注于服务器技术及软件下载分享
分类导航

云服务器|WEB服务器|FTP服务器|邮件服务器|虚拟主机|服务器安全|DNS服务器|服务器知识|Nginx|IIS|Tomcat|

服务器之家 - 服务器技术 - WEB服务器 - apache 二级域名解析实现方法

apache 二级域名解析实现方法

2020-11-29 15:25服务器知识网 WEB服务器

首先,你的拥有一个有泛域名解析的顶级域名,例如: domain.com其次,在 httpd.conf 中打开 mod_rewrite之后,在 httpd.conf 的最后,添加以下内容

复制代码 代码如下:


RewriteEngine on
RewriteMap lowercase int:tolower
RewriteMap vhost txt:/usr/local/etc/apache/vhost.map
RewriteCond ${lowercase:%{SERVER_NAME}} ^(.+)$
RewriteCond ${vhost:%1} ^(/.*)$
RewriteRule ^/(.*)$ %1/$1



其中的 /usr/local/etc/apache 是你的 apache 服务器配置文件所在路径,根据实际情况更改。
然后,在这个所在路径的目录下创建一个文件: vhost.map
内容为:

复制代码 代码如下:


www.domain.com /usr/local/www/data-dist/domain
bbs.domain.com /usr/local/www/data-dist/bbs
anyname.domain.com /usr/local/www/data-dist/anyname


以上部分都是:” 域名+空格+绝对路径” 的形式。

最后,在你的网站根目录 /usr/local/www/data-dist 下,创建对应目录:
domain , bbs , anyname 等等,理论上可以无限。

这样,通过浏览器,访问 www.domain.com 时,实际上访问的就是 /usr/local/www/data-dist/domain目录下的文件。同理,访问 bbs.domain.com 实际上访问的就是 /usr/local/www/data-dist/bbs 目录下的文件。而且,你可以
随时更改 vhost.map 来增加、删除、修改你的二级域名和所指向的实际路径,不用重启 apache。

第一步:打开apache的配置文件httpd.conf,去掉LoadModule rewrite_module modules/mod_rewrite.so前面的#号。
第二步:打配置文件尾部加上
RewriteEngine on
RewriteMap lowercase int:tolower
#定义映像文件
RewriteMap vhost txt:/apache/vhost/vhost.map
#处理变名
RewriteCond %{REQUEST_URI} !^/icons/
RewriteCond %{REQUEST_URI} !^/cgi-bin/
RewriteCond ${lowercase:%{SERVER_NAME}} ^(.+)$
这里做基于文件的重新映射
RewriteCond ${vhost:%1} ^(/.*)$
RewriteRule ^/(.*)$ %1/$1
RewriteCond %{REQUEST_URI} ^/cgi-bin/
RewriteCond ${lowercase:%{SERVER_NAME}} ^(.+)$
RewriteCond ${vhost:%1} ^(/.*)$
RewriteRule ^/(.*)$ %1/cgi-bin/$1

注意:vhost.map文件是域名和空间映像的文件,格式如下: 
http://www.abc.com/vhostusr/www.abc.com
http://www.xyz.com/vhostuser/www.xyz.com
http://www.cccbbbbs.net/vhostuser/www.ccbbbb.net
第三步:保存配置文件,重启apache。在开设可绑定域名的空间时,只要在vhost.map文件里添加相应记录,并建立相应文件夹就OK了~~~
其实这个可以用php脚本来完成的,很简单的~~呵呵~~~
注意啊:php_admin_value open_basedir “path,这个选项要配好啊~~新手如果不懂的,就不要动这个了~
==============================================
方法二、

复制代码 代码如下:


rewriteengine on
rewritecond %{HTTP_HOST} [^.]+\.域名\.com$
rewriterule ^(.+) %{HTTP_HOST}$1 [C]
rewriterule ([^.]+)\.域名\.com(.*) /$1$2


其他配置文件

接着在DNS中开设一个泛解析到对应的IP地址。
就可以实现下面的方案。

域名:domain.com
绝对路径:/home/domain.com/
www.domain.com 自动解析到 /home/domain.com/www/
abc.domain.com 自动解析到 /home/domain.com/abc/
等等子域名都可以自动解析到 /home/domains.com/对应子域名名称的文件夹
直接建立子域名名称的文件夹即可使用。不需重启apache。/vhostuser/www.ccbbbb.net/vhostuser/www.xyz.com/vhostusr/www.abc.com

延伸 · 阅读

精彩推荐
  • WEB服务器怎么在阿里云服务器上运行javaweb

    怎么在阿里云服务器上运行javaweb

    如何在阿里 云服务器 上运行Javaweb 作为一名开发人员,将Java Web应用程序部署在云服务器上是非常常见的任务。 阿里云 作为国内领先的云计算平台,提供...

    未知832023-06-20
  • WEB服务器2019常见六种web服务器软件介绍

    2019常见六种web服务器软件介绍

    WEB服务器也可以称为网站服务器,可以用来放置网站文件,供用户浏览。那么常见的WEB服务器软件有哪些呢? ①Apache Apache是世界使用排名的Web服务器软件。...

    服务器之家21692019-05-25
  • WEB服务器阿里云服务器支不支持web

    阿里云服务器支不支持web

    阿里 云服务器 是一款由阿里巴巴集团提供的云计算服务,旨在为用户提供高性能、可靠的云端计算平台。作为一家全球领先的云计算服务提供商, 阿里云...

    未知1372023-07-06
  • WEB服务器Apache启用GZIP压缩网页传输方法

    Apache启用GZIP压缩网页传输方法

    上一篇文章我们已经介绍了Apache启用GZIP压缩网页的方法,这里又发现了一篇好文章,特分享给大家...

    服务器技术网8162021-09-30
  • WEB服务器phpstudy在本地搭建多个网站的方法

    phpstudy在本地搭建多个网站的方法

    经常做网站的朋友,往往要在自已的电脑同时建立多个站点,而 phpstudy 这款软件就能很好的解决这个问题,大家看下图 点击上图中的 其它选项菜单 ,就会...

    服务器之家13882019-10-08
  • WEB服务器PHPStudy下如何为Apache安装SSL证书的方法步骤

    PHPStudy下如何为Apache安装SSL证书的方法步骤

    这篇文章主要介绍了PHPStudy下如何为Apache安装SSL证书的方法步骤,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧...

    沃通CA3962019-06-29
  • WEB服务器阿里云ossweb服务器

    阿里云ossweb服务器

    阿里云 OSS(Object Storage Service)是一个面向 Internet 的对象存储服务平台,提供海量、安全、低成本、高扩展的数据存储和访问服务。OSS 可以作为 Web 服务器...

    未知1362023-07-09
  • WEB服务器阿里云web服务器部署

    阿里云web服务器部署

    一、前言 近年来,云计算技术得到了广泛的应用和推广,其中 云服务器 成为了最受欢迎的云服务之一。在众多 云服务商 中, 阿里云 是最大的一家,其云...

    未知1902023-05-23