速查在线工具箱

伪静态规则转换

  • 打赏支持
  • 分享链接
  • 反馈建议
本工具支持 Apache .htaccess ↔ Nginx rewrite 规则的双向转换。转换后请在目标服务器实际测试,部分复杂规则可能需要手工调整。
Apache .htaccess
Nginx rewrite

常用模板

点击下方任一模板快速加载示例:

HTTP 强制跳转 HTTPS
所有 HTTP 访问自动 301 跳转到 HTTPS
www 跳转到裸域名
带 www 的域名统一跳转到主域名
裸域名跳转 www
主域名统一跳转到 www 子域
去除末尾斜杠
URL 末尾的 / 去除,规范化路径
PHP 路由伪静态
所有请求转发到 index.php(框架通用)
HTML 伪静态
将 .php 后缀隐藏为 .html
旧链接 301 重定向
批量将旧 URL 跳转到新 URL
屏蔽特定 UA
拦截指定 User-Agent 的爬虫/攻击

伪静态规则转换工具简介

伪静态规则转换是站长和运维人员常用的工具,用于将 Apache 服务器的 .htaccess 伪静态规则与 Nginx 的 rewrite 规则互相转换。

两者的语法差异较大:Apache 使用 RewriteRule + RewriteCond,Nginx 使用 rewrite + if + try_files。手工转换容易出错,本工具可自动完成大部分常见规则的转换。

使用场景

1. 将网站从 Apache 迁移到 Nginx 时批量转换伪静态规则。

2. 将 Nginx 配置反向转为 .htaccess 用于本地开发或共享主机环境。

3. 学习两种服务器伪静态语法的对应关系。

4. 快速生成常用模板(HTTP 跳转、www 规范化、PHP 路由等)。

语法对照参考

Apache RewriteRule:RewriteRule ^pattern$ target [flags]

Nginx rewrite:rewrite ^pattern$ target [flags];

常用 flag 对照:[L] = last[R=301] = permanent[R=302] = redirect[QSA] = 在 Nginx 中需手动拼接 $query_string

Apache RewriteCond:RewriteCond %{VAR} pattern

Nginx if:if ($VAR ~ pattern) { ... }

注意事项

1. 复杂规则(如多条件组合、自定义变量)需手工调整。

2. Nginx if 是"邪恶的"——能避免尽量用 maptry_files 替代。

3. Apache RewriteBase 在 Nginx 中通过 location 块前缀实现。

4. 转换后务必在测试环境验证再上线。

最新工具