.htaccess伪静态(URL重写)绑定域名到子目录实现子站点

本文介绍如何使用Apache服务器的.htaccess文件实现伪静态配置,包括绑定域名到子目录及一个空间支持多个站点的方法。通过示例展示了如何设置重定向以确保只有指定域名可以访问特定子目录。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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文件了。

转载于:https://www.cnblogs.com/crxis/p/6984618.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值