Deprecated: Function create_function() is deprecated in /usr/local/lighthouse/softwares/btpanel/wwwroot/vzone.me/usr/plugins/AntiSpam/Plugin.php on line 75
利用.htaccess将域名绑定到子目录,一个空间建立多个站点 - V-ZONE 互联网营销、网络技术学习、生鲜电商

利用.htaccess将域名绑定到子目录,一个空间建立多个站点

利用.htaccess将域名绑定到子目录:

 

让你同一空间安装多个站点如何利用利用.htaccess绑定域名到子目录呢?

 

前提你的服务器要支持apache的Rewrite功能,

 

只有这样才能使用.htaccess,(基本上linux的主机都支持)

 

具体请询问空间服务商,网上搜索到的一些方法,大都是大同小异,

 

所提供的.htaccess代码更改方法如下:

# END WordPress

RewriteEngine on

# 把 yourdomain.com 改为你要绑定的域名.

RewriteCond %{HTTP_HOST} ^(www.)?yourmaindomain.com$

# 把 subfolder 改为要绑定的目录.

RewriteCond %{REQUEST_URI} !^/subfolder/

# 不要改以下两行.

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

# 把 subfolder 改为要绑定的目录.

RewriteRule ^(.*)$ /subfolder/$1

# 把 yourdomain.com 改为你要绑定的域名

# 把 subfolder 改为要绑定的目录.

# subfolder/ 后面是首页文件index.php, index.html……

RewriteCond %{HTTP_HOST} ^(www.)?yourmaindomain.com$

RewriteRule ^(/)?$ subfolder/index.php [L]



上面的方法效果不太好,不完美:在根目录放置了.htaccess文件,访问时候有个毛病就是图片无法显示:

刚才又找了一点东西,学习研究一番,发现一个很好的方法,.htaccess写法如下:

根目录的.htaccess如下:

 

<IfModule mod_rewrite.c>

RewriteEngine On

RewriteCond %{HTTP_HOST} ^((www|blog)\.)?anysns\.com$

RewriteCond %{REQUEST_URI} !^/blog/

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^(.*)$ /blog/$1

RewriteCond %{HTTP_HOST} ^((www|blog)\.)?anysns\.com$

RewriteRule ^(/)?$ blog/index.php [L]

RewriteCond %{HTTP_HOST} ^(www\.)?php20\.com\.cn$

RewriteCond %{REQUEST_FILENAME} !-d

RewriteCond %{REQUEST_FILENAME} !-f

RewriteRule ^(.*)$ index.php [QSA,L]

</IfModule>



假如要绑定的是把anysns.com绑定到blog目录中,所以不仅要在根目录放置.htaccess文件,

还要在blog目录中放置.htaccess文件,blog目录中的.htaccess写法如下:

 

# BEGIN WordPress

<IfModule mod_rewrite.c>

RewriteEngine On RewriteBase /blog

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule . /blog/index.php [L]

</IfModule>

# END WordPress

OK,搞定!

注意:windows系统在本地写.htaccess并命名是不可能的,可以先保存为1.htaccess类似的名字,

传到服务器上在修改成为.htaccess,为了安全起见最好把权限设置属性为644。

评论

7 条

lunliba

我用的是WINDOWS2003,IIS的不知有没有办法用.htaccess

回复 ·

楼上2B

回复 ·

这样搞还是有问题啊

回复 ·

什么问题???

回复 ·

htaccess

htaccess是个不错的功能

回复 ·

我不知道你说的"windows系统在本地写.htaccess并命名是不可能的"是什么意思。

我只能告诉你,我的Windows Vista可以使用.htaccess这个名字作为文件名,那么Windows 7应该也不会有问题

如有疑问,可邮件联系。

另外,建议体验一下新系统,老系统固然好,但是新系统的新功能,也是不错的噢。

回复 ·

经过我自己的测试 xp 和windows7下是无法创建这个文件名的!
Vista下没有测试过!
不知道你的意思是什么!这个文件可以下载并放到本地windows系统中!
但是我的意思是不能直接创建.htaccess这样一个文件名的文件!谢谢你的意见!

回复 ·

添加新评论