.htaccess伪静态(URL重写)绑定域名到子目录实现子站点
Posted crxis
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了.htaccess伪静态(URL重写)绑定域名到子目录实现子站点相关的知识,希望对你有一定的参考价值。
Apache主机一般支持.htaccess伪静态,即可以实现绑定域名到子目录、一个空间多个站点。
应用举例:绑定htaccess.800m.net到htaccess目录
根目录下.htaccess内容
<IfModule mod_rewrite.c> RewriteEngine On RewriteBase / # 绑定htaccess.800m.net到子目录htaccess RewriteCond %{HTTP_HOST} ^htaccess\.800m\.net$ [NC] RewriteCond %{REQUEST_URI} !^/htaccess/ RewriteRule ^(.*)$ htaccess/$1?Rewrite [L,QSA] #可以绑定多个,只需重复上三行代码并更改一下域名、目录名就行了 </IfModule>
即使HTTP_HOST中的“.”不加反斜杠,也能够实现绑定htaccess.800m.net,因为“.”可以匹配任意一个字符。
htaccess目录下的.htaccess内容
<IfModule mod_rewrite.c> RewriteEngine On RewriteBase / #只许绑定的域名访问,其他域名301跳转 RewriteCond %{HTTP_HOST} !^htaccess\.800m\.net$ [NC] RewriteRule (.*) http://htaccess.800m.net/$1 [L,R=301] #对绑定目录下htaccess目录的处理 RewriteCond %{REQUEST_URI} ^\/htaccess\/ [NC] RewriteCond %{QUERY_STRING} !^(.*)?Rewrite
#htaccess.800m.net/htaccess实际上访问htaccess.800m.net/htaccess/htaccess RewriteRule ^(.*)$ /%{REQUEST_URI}/%{REQUEST_URI}/$1?Rewrite [L,QSA] </IfModule>
当然,如果对绑定子目录的要求不高的话,子目录下就不需要建立.htaccess文件了。
以上是关于.htaccess伪静态(URL重写)绑定域名到子目录实现子站点的主要内容,如果未能解决你的问题,请参考以下文章