跳到正文
在此运行 完全在你的浏览器里运行,不上传、不登录

htaccess 转 Nginx

用真实映射表把 Apache .htaccess 规则转成 Nginx 配置。

已转换 / 需人工处理

需要人工处理的规则

    映射按行进行且保守:没有可靠对应物的规则会保留为注释说明,绝不静默丢弃。

    怎么用

    1. 把 .htaccess 粘贴到左侧,或点示例看一份真实文件被转换的样子。
    2. 点转换 —— 右侧会输出一个 server 块,里面是映射后的指令。
    3. 看面板上方的计数器:已转换多少条、多少条需要人工处理。
    4. 看下方需要人工处理的规则清单,每条都是原始行,输出里也以注释形式保留着。
    5. 复制或下载成 nginx.conf,部署前务必逐条复核。

    转换器按行处理,而且刻意保守:没有可靠对应物的指令会一直留在你眼前,不会被悄悄扔掉。

    常见用法

    常见问题

    问:为什么有些输出被标成需人工处理? 答:有些 Apache 指令在 Nginx 里没有直接对应物,比如 PHP 设置、环境匹配和自定义 handler。硬猜会得到一份「看着已完成、reload 就报错」的配置,所以这些行是标出来而不是编一个。

    问:结果还需要人工检查吗? 答:需要。Nginx 对重写规则的求值方式和 Apache 不同:模式匹配的是带前导斜杠的 URI,而 location 里的 if 有众所周知的坑。请把输出当成一份很强的草稿,而不是可以直接丢上机的文件。

    问:RewriteCond 条件会转换吗? 答:有直接对应物的会:服务器变量映射到 Nginx 变量,文件测试变成 -f / -d 判断,条件变成外层的 if 块。用到 [OR] 的条件会被额外标注,因为 Nginx 的 if 表达不了「或」。

    你的数据留在这台设备上

    htaccess 转 Nginx 完全在本地运行。你粘贴或拖入的一切都由你自己的浏览器处理,不会被传走。我们的服务器不保存任何东西——关掉标签页就没了。

    你输入的内容不会发往服务器、不被记录,也不用于分析统计。首次加载之后即使断网,这个页面照样能用。