Назад | Перейти на главную страницу

Как переписать правила строки запроса htaccess в nginx?

У меня такой 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;
  }

Как я могу заставить это работать?

Спасибо.

попробуй это:

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

Просто удалил $ host и хранится / и это нормально.