Files
htaccess-manager/README.md
2025-11-19 16:43:15 +08:00

208 lines
5.2 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 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服务器。