.htaccess 转 Nginx 配置转换器
在浏览器中即时将 Apache .htaccess 规则转换为 Nginx 配置。免费、私密、完全在客户端运行。
# Nginx 配置将在此显示...
在浏览器中即时将 Apache .htaccess 规则转换为 Nginx 配置。免费、私密、完全在客户端运行。
# Nginx 配置将在此显示...
Apache 和 Nginx 是当今使用的两种主要 Web 服务器,但它们的配置不同。 Apache 使用分布在整个文档树中的 .htaccess 文件 — 每个目录都可以覆盖其自身及其子目录的行为。 Nginx 使用单个集中式配置文件,没有每个目录的覆盖。从 Apache 迁移到 Nginx 需要将每个 .htaccess 指令转换为等效的 Nginx 位置块、重写规则或服务器指令。
最常见的 .htaccess 用例具有直接的 Nginx 等效项。 URL 重写(RewriteRule)映射到 Nginx 的重写指令。重定向(Redirect、RedirectMatch)成为Nginx的返回或重定向行。身份验证(AuthType、AuthUserFile)映射到 Nginx 的 auth_basic。 CORS、自定义标头和 MIME 类型覆盖都有 Nginx 对应项。
该转换器解析常见的 .htaccess 指令并生成 Nginx 配置语法。复杂的正则表达式重写和 Apache 特定的模块指令可能需要手动调整,但典型情况会直接转换。输出是一个起点 - 在部署之前仔细检查它,特别是对于安全敏感的指令。
Apache 到 Nginx 的迁移是网络托管中最常见的操作更改之一。 Nginx 通常每个请求使用更少的内存,更有效地处理并发连接,并且更快地提供静态资源。除了配置转换之外,迁移很简单,配置转换是转换器解决的瓶颈。
阅读 Nginx 等效语法还可以帮助 Apache 管理员理解 Nginx 习惯用法。两种配置的并排比较可以阐明每个服务器如何表达相同的意图。
粘贴您的 .htaccess 内容,获取 Nginx 配置等效项。
带有 [L] 标志的 Apache RewriteRule 变为 Nginx rewrite ... last;。 [R=301] 的 RewriteRule 变为带有重写 URL 或永久重写的返回 301。 Apache 重写引擎内的条件 (RewriteCond) 成为 Nginx 中的 if 块,并附带标准警告,即 Nginx if 语句在位置块内具有不寻常的语义(小心使用它们)。
Apache 目录和 FilesMatch 部分映射到 Nginx 位置块。 AuthType Basic 加上 AuthUserFile 就成为 auth_basic + auth_basic_user_file。标头设置或AddHeader成为Nginx的add_header。
某些 Apache 功能没有干净的 Nginx 等效项。 mod_rewrite 的 RewriteMap 具有数据库后端、复杂的环境变量操作和某些特定于 Apache 的身份验证提供程序可能需要自定义 Nginx 模块或外部脚本。