如何在.htaccess中实现URL不变指向指定文件夹而不重定向
.htaccess 实现路径内部重写配置方案
- 确认Apache已开启
mod_rewrite扩展 - 站点根目录的
AllowOverride配置已设置为All,允许.htaccess文件生效
将以下配置写入站点根目录的.htaccess文件即可:
RewriteEngine On # 匹配指定关键词开头的路径,内部重写到sample目录 RewriteRule ^(oxfordmedical|simsmedical)(.*)$ /sample/$2 [L,NC]
规则说明
- 正则
^(oxfordmedical|simsmedical)(.*)$会匹配所有以oxfordmedical或simsmedical开头的请求路径,后续需要新增关键词直接用|分隔添加即可 - 重写目标
/sample/$2会把匹配到的路径后半部分拼接在sample目录后:比如访问/oxfordmedical/会实际调用/sample/index.php,访问/oxfordmedical/css/style.css会实际调用/sample/css/style.css L标记表示匹配到本条规则后不再执行后续重写规则NC标记表示匹配路径时不区分大小写,可根据实际需求决定是否保留
该规则属于服务器内部重写,不会向浏览器返回301/302重定向状态码,用户地址栏的URL会保持原始输入的地址不变,完全符合需求。
内容的提问来源于stack exchange,提问作者user3755732
相关产品推荐
相关产品推荐

