.htaccess重写让空间绑定多个域名到不同的目录支持多站点
购买了一个美国主机,想要在同一个空间上绑定多个域名,建立多个网站,这是很正常不过的事情。但是如果你购买了一个便宜货的美国空间,那么想要在同一个空间上绑定多个域名支持多站点就难了。
这样说可能还是有人不太明白。最近有人问我如果在Godaddy上绑定多个域名建立多个网站,按理说应该是直接在后台绑定多个域名,然后主机就会自动建立多个目录,这样不同的目录对应不同的域名访问了。
但是那个朋友说自己在Godaddy后台绑定了多个域名,然后访问的却是同一个网站,不能够支持多个站点。我查看了这个朋友的主机,原来是购买了我在《购买1.99美元/月Godaddy无限流量空间和绑定域名方法教程》介绍的Godaddy 4GB Economy型号的主机。
Godaddy 4GB Economy型号主机大小为10GB,流量为无限,而且前三个月为1.99美元。的确很划得来。然而这里有一个巨大的限制就是虽然支持同时绑定多个域名,也有好几个 MySQL 数据库,但是不支持多站点,也就是一个主机不能同时建立多个网站,只能多个域名绑到一个IP地址上。
打开多个绑定的域名时,均指向一个默认首页,而根据主机读写规则,优先index.php首页,因此多个域名打开的均是同一个网站的首页。也就是我们经常在免费空间中的CP面板中的Park域名功能,实现的效果就是:baidu.com和Baidu.cn两个域名但访问的却是同一个网站。
Godaddy 的Deluxe型号主机可以绑定多个域名并支持建立多个站点,但是像我们这样的草根,太贵的主机不想买,太便宜的主机又不敢买,于是买了个Godaddy的介于便宜和稳定之间的主机。要命的是Godaddy居然限制只能建立一个网站,有没有突破的方法呢?
当然有,今天免费资源部落就来为大家介绍利用.htaccess文件重写的方法强制Godaddy Economy型号的主机支持多个站点,如果你使用了其他的主机但是也是不支持多个站点,可以参考这个方法来修改。
如果你是在找在同一个空间建立多个网站,甚至是无限个网站,这里有:
- 1、hawkhost老鹰主机1.9美元/月支付宝付款3G空间无限域名无限建站(可用支付宝付款,首年约人民币150元,可以绑定限个域名)
- 2、lunarpages支持国内银行卡购买主机送免费顶级域名可建无限个网站(可以用国内网上银行付款,无限绑定域名,而且无限空间,无限流量)
- 3、最新的Godaddy经济型空间1.99美元/月用支付宝成功购买方法(参考这个方法可以购买Godaddy的其他型号的主机,可以建立多个站点)
.htaccess重写让空间绑定多个域名到不同的目录支持多站点方法与教程
1、Godaddy的前三个月1.99美元的空间的确有人不少人购买了,但是不少人说在购买的过程中没有显示打折,我在《最新的Godaddy经济型空间1.99美元/月用支付宝成功购买方法》一文自己做了新的测试,通过此方法可以成功购买到1.99美元优惠Godaddy空间。
2、登录到Godaddy空间后台,在“我的产品”中,选择空间,然后点击后面的“启动”,进入空间的后台管理面板。如下图(图片看不到,可点击,放大):
3、接下来你会看到你的空间后台信息,然后点击“域名管理”,如下图:
4、现在你可以为你的Godaddy绑定域名了。如果你是其他的空间,也是一样的,先要到后台绑定好域名。注意这里的绑定域名只是停靠,也就是说多个域名只访问相同的网站。如下图(图片看不清,请点击,放大):
5、登录FTP,在根目录下新建几个文件夹,文件夹的名称随便你取,如果你想多绑定一域名,就新建一个。如下图:
6、现在打开记事本,将下在的代码保存,然后上传到FTP的根目录,在FTP当中将TXT重命名为.htaccess就行了。如果空间已经有了.htaccess文件,可以将其下载到本地,编辑后,重新上传。
7、如果你的空间无法使用FTP,当然也可以使用在空间的在线文件管理器进行文件的上传和下载以及编辑,我在《速度快!Sitemix.jp稳定1.5GB容量免费php空间可绑域名无限流量》当中有详细的操作说明。
8、.htaccess代码如下,注意你可能需要作一些调整和修改,注释我已经写在旁边了。PS:我的Godaddy的空间原来的域名是baidu0.tk,我利用.htaccess重写将另一个域名0baidu.tk绑定到另外一个目录当中,这样我利用Godaddy经济型空间建立了多个网站(原来是不具备这个功能的)。
- <IfModule mod_rewrite.c>
# 关闭目录列表
Options -Indexes
RewriteEngine on
# 预设页面
DirectoryIndex default.html index.html default.html index.htm default.php index.php
# 统一网址,去掉www。如果你想保留www,自己在第二行添加
RewriteCond %{HTTP_HOST} ^0baidu.tk[NC]
RewriteRule ^(.*)$ https://0baidu.tk/$1 [L,R=301]
# 将域名绑定在特定的目录当中。0baiud.tk是我建立的文件目录
RewriteCond %{HTTP_HOST} ^(www.)?0baidu.tk$ [NC]
RewriteRule ^(.*)$ /0baidu.tk/$1 [L]
</IfModule>
9、再将下面的代码按照上面的方法保存为.htaccess,上传到你想要将域名绑定的目录文件夹当中,例如我想将0baidu.tk这个域名绑定在0baidu.tk这个文件夹当中,那么我用FTP新建了0baidu.tk文件夹,将.htaccess文件放在这里。
- <IfModule mod_rewrite.c>
RewriteEngine on
RewriteBase /0baidu.tk/
</IfModule>
10、完成以上步骤后,我们就已经成功利用.htaccess重写在Godaddy经济型号的空间上建立起了多个域名多个站点了,如果你以后想建立三个站,甚至更多的站,按照上面的方法,选择绑定好域名,然后添加.htaccess语句即可。
11、利用.htaccess建立多个域名和多个站点演示(我放在Godaddy上,型号是Godaddy Economy 4GB空间):
- https://www.0baidu.tk/
- https://www.baidu0.tk/
文章出自:免费资源部落 / 版权所有。本站文章除注明出处外,皆为作者原创文章,可自由引用,但请注明来源。 禁止全文转载。
您或许对下面这些文章有兴趣: 本月吐槽辛苦排行榜
-
厉害。博主解决了我的大问题。
本来没有什么钱,买了Godaddy的1.99空间居然只能够绑定一个网站。
多做一个网站就多一份收入。[回复] -
看了半天,研究了一下,也没有搞明白。是不是我的主机不支持.htaccess重写的原因?
[回复] -
技术文档,先保存一下,以后用得着。用这个方法看来还可以省不少的钱。只要CPU不超标就行了。
[回复] -
是东西,我拿它到我的国内空间试验一下。看看行不行?要是可以的话,那就最好了。正好需要建立多个网站。
[回复] -
这个应该是一个通用的方法吧,所有支持.htaccess重写的主机都可以的。Godaddy的容量大,用这个方法最合适不过了。
[回复] -
精品的文章,不错!
[回复] -
从QQ群里过来,果断留下脚印。
[回复] -
天天看部落的文章,没有想到今天部落发福利。太高兴了。
[回复] -
.htaccess重写应该不是所有的空间都支持吧。免费空间几乎很少有。
[回复] -
今天按博主的示范去注册,发现根本不支持支付宝付款呀!
[回复] -
自己修改有hosting上.htaccess后
出现500错误了
下面是我的.htaccess
根目录
Options -Indexes # 关闭目录列表
RewriteEngine on #打开rewirte功能
DirectoryIndex default.html index.html default.html index.htm default.php index.php # 预设页面
# 以下三行诗301重定向
RewriteCond %{HTTP_HOST} ^baidufree.tk$ [OR]
RewriteCond %{HTTP_HOST} ^www.baidufree.tk$
RewriteRule ^baidufree/$ https://baidufree.tk [R=301,L]
# 将域名绑定在特定的目录当中。kbxlove是我建立的文件目录
RewriteCond %{HTTP_HOST} ^(public_html.)?baidufree$ [NC]
RewriteRule ^(.*)$ /baidufree/$1 [L]# Do not remove this line or mod_rewrite rules and search engine friendly URLs will stop working
RewriteBase /子目录中的.htaccess
RewriteEngine on
RewriteBase /baidufree/[回复] -
@qi
错了
是youhosting 上的主机[回复] -
老大。为什么图片不显示啊!
[回复] -
会影响搜索引擎?
[回复] -
好吧好吧,偶表示写完博客([url]https://ssi.pw/g[/url])才看到你的这篇文章。绝无抄袭意图 :)。
不过我在博客结尾也提出了一个关于无限循环重写的问题,我看你的重写规则里没有排出目录 /0baidu.tk/, 不知道直接访问这个目录(https://www.0baidu.tk/0baidu.tk/)会不会内部错误(无限重写引起的)。
[回复] -
如何在godaddy空间绑定多个域名的情况下做301转向?是在根目录的.htaccess里面继续写吗?应该怎么写?
还是把要转向的子域名绑定到文件夹然后在子域名的文件夹创建一个.htaccess? 我是想在绑定多个域名的基础上写如: m.my.com → mail.my.com
p.my.com → photos.my.com这种应该怎么写?其他的方法也可以 我找网上找不到合适的,博主能教一下我吗?
[回复]qi 回复:
@Yukino, 你是用的这个突破建立多个站点的方法吗?需要进入各个域名的子目录中的.htaccess写入301重定向代码。
[回复]Yukino 回复:
@qi, 假如我做x.domain.com转到s.domain.com
是不是在x.domin.com目录创建.htaccess直接写301代码?[回复]qi 回复:
@Yukino, 是的。就是这样。
[回复]Yukino 回复:
@qi, 那我想把已经绑定在godaddy上面的2个域名
x.com 和 m.com (其中m.com是用.htaccess重写绑定到x.com内的一个目录)的www.x.com和www.m.com转到x.com和m.com是在根目录的.htaccess内加上吗?是在.htaccess(已经写了一个域名绑定到一个目录)里面直接加上一段代码吗?我已经试过了 在里面加了后打开www不能转到不带www的域名
[回复]qi 回复:
@Yukino, 是在各自的目录中,比如m.com的子目录中。试试。
[回复]Yukino 回复:
@qi,
在空间根目录写了.htaccess –
(
# 关闭目录列表
Options -Indexes
RewriteEngine on
# 预设页面
DirectoryIndex default.html index.html default.html index.htm default.php index.php
# 统一网址,去掉www。如果你想保留www,自己在第二行添加
RewriteCond %{HTTP_HOST} ^0baidu.tk[NC]
RewriteRule ^(.*)$ https://0baidu.tk/$1 [L,R=301]
# 将域名绑定在特定的目录当中。0baiud.tk是我建立的文件目录
RewriteCond %{HTTP_HOST} ^(www.)?0baidu.tk$ [NC]
RewriteRule ^(.*)$ /0baidu.tk/$1 [L])
然后在要绑定的目录写了
(RewriteEngine on
RewriteBase /0baidu.tk/)
写了以上代码后 我想把另一个通过godaddy绑定到空间的主域名 – yukino.co (目录即空间根目录)
我要.co这个主域名的www转到不带www
我是要在空间根目录的.htaccess里面添加这个域名的代码吗? (如果是的话应该怎么写)
博主能告诉我一下吗?希望能把代码写出来.
[回复] -
我觉得可以利用一下Godaddy的子域名,创建多个ftp.mydomain.com的子站,然后用根据来路域名反向d到不同的子站。个人认为此方法更稳定。
根目录.htaccess文件示例:
RewriteEngine on
RewriteBase /
DirectoryIndex index.php
#每个站的默认首页请保持一致
RewriteCond %{HTTP_HOST} ^pjcss.com$ [NC]
RewriteRule ^(.*)$ https://www.pjcss.com/$1 [L,R=301]
RewriteCond %{HTTP_HOST} ^www.pjcss.com$ [NC]
RewriteRule ^(.*)$ https://ftp.pjcss.com/$1 [P]RewriteCond %{HTTP_HOST} ^shucs.com$ [NC]
RewriteRule ^(.*)$ https://www.shucs.com/$1 [L,R=301]
RewriteCond %{HTTP_HOST} ^www.shucs.com$ [NC]
RewriteRule ^(.*)$ https://ftp.shucs.com/$1 [P][回复] -
Options -Indexes
RewriteEngine on
DirectoryIndex default.html index.html default.html index.htm default.php index.php
RewriteCond %{HTTP_HOST} ^xxx.com[NC]
RewriteRule ^(.*)$ https://xxx.com/$1 [L,R=301]
RewriteCond %{HTTP_HOST} ^(www.)?xxx.com$ [NC]
RewriteRule ^(.*)$ /xxx.com/$1 [L]上面是根目录的.htaccess
下面的绑定域名目录的.htaccessRewriteEngine on
RewriteBase /xxx.com/这样对么?我的是 Godaddy 经济型主机
[回复] -
是不是windows的主机不可以呢…
[回复] -
新域名可以绑定,但是原绑定在空间的域名404了。。。
[回复] -
求教:iis6+ISAPI
RewriteCond %{HTTP_HOST} ^www.baidu.com$
RewriteRule ^(.*)$ /jtjy/$1 [L]我通过上面,把www.baidu.com绑定到了主机www/jtjy/下
结果:访问https://www.baidu.com/mulu/ 正常
访问https://www.baidu.com/mulu 不正常,会自动跳转到https://www.baidu.com/jtjy/mulu/ 的不存在的目录 怎么回事?上面的规则怎么改?[回复] -
这个方法好像不行。主机是DA面板的。看这里https://photo.chaui.org/。提示没解析成功。不知道怎么办。已经在DNSPod做好记录了。
[回复]qi 回复:
@Rich, 试试在DA中先绑定一下这个域名看看。
[回复]Rich 回复:
@qi, 发现只要在DA面板中的“域名指向”设置就好了。但是Chrome会出现:
此网页包含重定向循环
https://photo.chaui.org/ 的网页生成了 过多的重定向。清除此网站的 Cookie 或允许第三方 Cookie 可能会解决该问题。如果 不能解决,可能是服务器配置有问题,而不是您的 计算机有问题。
详细了解此问题。
错误代码:ERR_TOO_MANY_REDIRECTS[回复]