# HTACCESS Manager 一个专业的WordPress插件,用于智能管理.htaccess文件中的重定向规则。支持HTTPS强制重定向、WWW与根域名跳转配置,以及二级域名站点支持。 ## 功能特点 ### 🔒 强制HTTPS重定向 - 自动将所有HTTP请求重定向到HTTPS - 确保网站安全连接 ### 🌐 灵活的域名跳转配置 - **WWW跳转到根域名**:`www.example.com` → `example.com` - **根域名跳转到WWW**:`example.com` → `www.example.com` - **自由选择跳转方向** ### 🏷️ 二级域名支持 - 专门针对二级域名站点的优化配置 - 启用后只强制HTTPS,不处理WWW跳转 ### ⚡ 智能规则管理 - 自动生成优化的.htaccess规则 - 不干扰其他插件的现有规则 - 安全的规则添加和移除机制 ### 🛡️ 安全可靠 - Must-use插件支持,确保高可靠性 - 精确的规则匹配,避免误删其他配置 - 完整的卸载清理机制 ## 安装方法 ### 方法一:手动安装 1. 下载插件ZIP文件 2. 在WordPress后台进入【插件】→【安装插件】→【上传插件】 3. 选择ZIP文件并上传 4. 激活插件 ### 方法二:FTP安装 1. 解压插件文件到 `wp-content/plugins/htaccess-manager/` 2. 在WordPress后台【插件】页面激活"HTACCESS Manager" ## 使用方法 ### 基本配置 1. 进入【设置】→【HTACCESS 管理】 2. 根据您的需求配置选项: - **是否为二级域名**:如果使用类似 `sub.domain.com` 的地址请启用 - **重定向类型**:选择WWW与根域名的跳转方向 - **自动更新**:启用后设置更改时自动更新.htaccess文件 ### 配置示例 #### 场景1:主域名站点,WWW跳转到根域名 ``` www.example.com → example.com http → https ``` **配置:** - 是否为二级域名:❌ 否 - 重定向类型:✅ WWW跳转到根域名 #### 场景2:主域名站点,根域名跳转到WWW ``` example.com → www.example.com http → https ``` **配置:** - 是否为二级域名:❌ 否 - 重定向类型:✅ 根域名跳转到WWW #### 场景3:二级域名站点 ``` sub.example.com → https://sub.example.com (不处理WWW跳转) ``` **配置:** - 是否为二级域名:✅ 是 - 重定向类型:自动禁用 ### 手动操作 - **复制规则**:手动复制生成的规则到.htaccess文件 - **手动更新**:强制更新.htaccess文件 - **移除规则**:安全移除所有本插件添加的规则 ## 生成的规则示例 ### WWW跳转到根域名 + HTTPS ```apache # BEGIN HTACCESS Manager RewriteEngine On # 同时处理 HTTPS 和 WWW 重定向 RewriteCond %{HTTPS} off [OR] RewriteCond %{HTTP_HOST} ^www\. [NC] RewriteCond %{HTTP_HOST} ^(?:www\.)?(.+)$ [NC] RewriteRule ^ https://%1%{REQUEST_URI} [L,R=301] # END HTACCESS Manager ``` ### 二级域名 + 只强制HTTPS ```apache # BEGIN HTACCESS Manager RewriteEngine On # 强制HTTPS重定向(二级域名) RewriteCond %{HTTPS} off RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] # END HTACCESS Manager ``` ## 兼容性 ### 测试环境 - ✅ WordPress 5.0+ - ✅ PHP 7.4+ - ✅ Apache 2.4+ - ✅ LiteSpeed(含OpenLiteSpeed和LiteSpeed Enterprise)服务器 - ✅ 多站点网络 ### 插件兼容 - ✅ 与大多数缓存插件兼容 - ✅ 与安全插件兼容 - ✅ 不影响其他.htaccess规则生成插件 ## 故障排除 ### 常见问题 **Q: 插件激活后网站出现重定向循环?** A: 检查服务器是否已配置SSL证书,或尝试清除浏览器缓存。 **Q: .htaccess文件无法写入?** A: 确保.htaccess文件权限设置为644,或使用手动复制功能。 **Q: 规则没有生效?** A: 确认服务器支持mod_rewrite模块,检查Apache配置。如果是OpenLiteSpeed服务器,可能需要重启OpenLiteSpeed服务。 **Q: 如何恢复默认设置?** A: 停用并重新激活插件,或使用"移除规则"功能。 ### 日志检查 如果遇到问题,请检查: 1. WordPress调试日志 2. 服务器错误日志 3. .htaccess语法验证 ## 开发者信息 ### 文件结构 ``` htaccess-manager/ ├── htaccess-manager.php # 主插件文件 ├── readme.md # 说明文档 └── (自动生成) └── mu-plugins/ └── htaccess-helper.php # Must-use插件 ``` ### 钩子函数 插件提供以下WordPress钩子: - `htaccess_manager_before_update` - 规则更新前 - `htaccess_manager_after_update` - 规则更新后 ### 自定义开发 如需扩展功能,可参考插件中的规则生成逻辑: ```php $manager = new HTACCESS_Manager(); $rules = $manager->generate_htaccess_rules(); ``` ## 版本历史 ### v1.0.2 (当前版本) - 增强规则移除安全性 - 改进空行处理 - 优化MU插件逻辑 ### v1.0.1 - 修复规则冲突问题 - 添加内容预览功能 - 改进用户界面 ### v1.0.0 - 初始发布 - 基础重定向功能 - Must-use插件支持 ## 技术支持 如果您遇到问题或需要帮助,请: 1. 查看本README文档 2. 检查WordPress错误日志 3. 联系服务器管理员确认Apache配置 ## 许可证 GPL v2或更高版本 ## 贡献 欢迎提交Issue和Pull Request来帮助改进这个插件。 --- **注意**:(1)在使用本插件前,请务必备份您的.htaccess文件。 (2)本插件不适用于Nginx服务器。