php子域名创建,使用.htaccess(PHP)即时创建子域名

快速下载

>您需要在DNS服务器* .website.com上创建通配符域

>然后在您的vhost容器中,您将需要指定通配符aswell * .website.com – 这是在ServerAlias DOCs完成

>然后在PHP中提取和验证子域,并显示相应的数据

长版本

1.创建通配符DNS条目

在您的DNS设置中,您需要创建一个wildcard domain entry,例如* .example.org。通配符条目如下所示:

*.example.org. 3600 A 127.0.0.1

2.在vhost中包含通配符

接下来在Apache配置中,您需要设置一个vhost容器,以指定ServerAlias DOCs指令中的通配符。示例vhost容器:

ServerName server.example.org

ServerAlias *.example.org

UseCanonicalName Off

3.找出您在PHP中使用的子域

然后在您的PHP脚本中,您可以通过查看$ _SERVER超级全局变量来找出该域。下面是在PHP中抓取子域的示例:

preg_match('/([^.]+)\.example\.org/', $_SERVER['SERVER_NAME'], $matches);

if(isset($matches[1])) {

$subdomain = $matches[1];

}

我在这里使用正则表达式,以允许人们通过www.subdomain.example.org或subdomain.example.org访问您的网站。

如果你从来没有预料到处理www。 (或其他子域),那么你可以简单地使用一个子串,如:

$subdomain = substr(

$_SERVER['SERVER_NAME'], 0,

strpos($_SERVER['SERVER_NAME'], '.')

);

大规模虚拟主机

大规模虚拟主机是一个略有不同的方案,以上,你通常使用它托管许多不同的网站,而不是试图使用它强大的应用程序的问题提出。

我在post on my blog之前记录了我的mod_rewrite基于大规模虚拟主机环境,你可以看看,如果这是你想要的路线。还有,当然,respective Apache manual page。

Apache也有一个内部的方式来处理大规模的虚拟主机,这比我使用的mod_rewrite方法稍有弹性。这一切都在Apache Dynamically Configured Mass Virtual Hosting manual page上描述。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值