新网Logo
首页>虚机资讯>

云虚拟主机:利用.htaccess绑定多域名he搭建多个网站\"

登录 注册

云虚拟主机:利用.htaccess绑定多域名he搭建多个网站\"

  • 来源:网络
  • 更新日期:2020-04-23

摘要:RewriteEngineOnRewriteBase/#绑定m.jsphp.net域名到根目录下的site2目录RewriteCond%{HTTP_HOST} ^m2.jsphp.net$ [NC]RewriteCond%{REQUEST_URI} !^/site2/RewriteRule^(.

RewriteEngineOn

 

RewriteBase/

#绑定m.jsphp.net域名到根目录下的site2目录

RewriteCond%{HTTP_HOST} ^m2.jsphp.net$ [NC]

RewriteCond%{REQUEST_URI} !^/site2/

RewriteRule^(.*)$ site2/$1?Rewrite[L,QSA]

#如果有多个复制下面这3行代码,根据目录和域名对应修改复制一段

RewriteCond%{HTTP_HOST} ^m1.jsphp.net$ [NC]

RewriteCond%{REQUEST_URI} !^/site1/

RewriteRule^(.*)$ site1/$1?Rewrite[L,QSA]

此时,输入m1.jsphp.net,应该就可以访问到site1目录下的文件了。输入m2.jsphp.net就可以访问到site2目录下的文件了。

但是,如果你细心还会发现,你的主域名假如是www.jsphp.net/site1 也是可以访问到site1目录下的站点内容。这样不是我们所希望的。毕竟这样对于SEO是比较不友好的。

第二步:子目录也添加.htaccess文件

接下来我们再新建一个.htaccess文件,假如我们需要处理的域名为m1.jsphp.net 目录是 根目录下的 site1 目录

.htaccess代码如下:

RewriteEngineOn

 

RewriteBase/

 

#只许绑定的域名访问

 

RewriteCond%{HTTP_HOST} !^m1.jsphp.net$ [NC]

 

RewriteRule(.*) http://m1.jsphp.net/$1 [L,R=301]

 

#对绑定目录下与 同名的目录的处理,如果没有同名目录,下面的代码也可以不需要

 

RewriteCond%{REQUEST_URI} ^/site1/[NC]

 

RewriteCond%{QUERY_STRING} !^(.*)?Rewrite

 

RewriteRule^(.*)$ /%{REQUEST_URI}/%{REQUEST_URI}/$1?Rewrite[L,QSA]

此时你就可以看到你访问 主域名 www.jsphp.net/site1/ 目录会自动跳转到   m1.jsphp.net目录里。

如果你有其他的伪静态规则,则都可以继续在对应的.htaccess文件里添加。