通过伪静态规则实现子目录绑定:apache+.htaccess或IIS+ISAPI_REWRITE+httpd.ini
 
Apache HTTP Server一般安装在类Linux服务器上,默认支持URL重写,一般虚拟主机用户将.htaccess文件放网站根目录就可以实现伪静态了,使用下面的伪静态规则就可以实现子目录绑定。
 
RewriteEngine on
# 把 ip.caoger.net 改为你要绑定的域名,把 IPdir 改为要绑定的目录
RewriteCond %{HTTP_HOST} ^(www.)?ip.caoger.net$
RewriteCond %{REQUEST_URI} !^/IPdir/
 
# 不要改以下两行.
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
 
# 把 IPdir 改为要绑定的目录.
RewriteRule ^(.*)$ /IPdir/$1
 
# 把ip.caoger.net 改为你要绑定的域名
# 把 IPdir 改为要绑定的目录.
 
Disallow: /Disallow
 
对于IIS+ISAPI_REWRITE+httpd.ini的情况,如下内容的httpd.ini可以让子网站根目录(仅http://ip.caoger.net/和对应的www子域名这2个网址)重写到子目录。
 
# 把 yourdomain.com 改为你要绑定的域名
RewriteCond Host: ^(www/.)?ip/.caoger/.net$
RewriteRule ^(/)$ /IPdir/ [L]
 
增加如下规则可以让以http://ip.caoger.net/about/(这里的域名也可能是www子域名)开头的所有url实现重写,实际地址是将ip.caoger.net/about/为ip.caoger.net/IPdir/about/。
 
RewriteRule ^/about/(.*)$ /IPdir/about/$1 [L]
 
需要重写多个(或多类)目录或文件,就要多增加几条规则。增加多个子目录,也是需要些重复劳动。显然,IIS+ISAPI_REWRITE+httpd.ini下的规则写起来比apache+.htaccess下的麻烦多了。

dawei

【声明】:佛山站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。