如何在 nginx 中重写查询字符串规则 htaccess?

如何在 nginx 中重写查询字符串规则 htaccess?

我有这个htaccess:

<IfModule mod_rewrite.c>

  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule ^(.*) index.php?%{QUERY_STRING} [L]

</IfModule>

转换为 nginx 规则。

问题出在最后一行。

这是我现在的:

  set $condition "";

  if (!-f $request_filename) {
    set $condition F;
  }
  if (!-d $request_filename) {
    set $condition "${condition}D";
  }
  if ($condition = FD) {
    rewrite ^(.*) $host/index.php?$query_string last;
  }

我怎样才能使它工作?

谢谢。

答案1

刚刚删除了 $host 和保存 /没关系。

答案2

尝试这个:

location / {
    try_files $uri $uri/ /index.php?$args;
}

相关内容