@invisii

Как преобразовать эти Apache редиректы в nginx?

Доброго дня. Помогите преобразовать эти htaccess редиректы в nginx:

RewriteEngine On
RewriteCond %{THE_REQUEST} \s(\S+)\.html
RewriteRule ^ %1 [R=301,L]
RewriteCond %{REQUEST_FILENAME}.html -f
RewriteRule (.*) $1.html [L]
RewriteCond %{QUERY_STRING} ^(.+)$
RewriteRule ^(.*)$ $1@%1? [L]
  • Вопрос задан
  • 224 просмотра
Решения вопроса 1
@dodo512
map $args $_at {
    default "@";
    ""      "";
}
server {
    
    location ~ ^(.+)\.html$ {
        return 301 $1$is_args$args;
    }

    location / {
        try_files $uri $uri$_at$args.html $uri/ /index.php?$args;
    }
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
ky0
@ky0 Куратор тега Nginx
Миллиардер, филантроп, патологический лгун
location / {
  rewrite ^(.*)$ /%1 redirect;
  rewrite ^(.*)$ /$1.html break;
  if ($query_string ~ "^(.+)$"){
    rewrite ^(.*)$ /$1@%1? break;
  }
}


https://winginx.com/ru/htaccess
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы