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

nginx rewrite не работает ?? он просто игнорирует это

у меня странная проблема с nginx, он не хочет переписывать ...

У меня есть эта конфигурация, и мне нужно передать хеш (40 символов) в файл php, он работает с apache mod_rewrite, но с nginx я даже не пытался делать простые перезаписи, он просто не работает

server {
.........
        location / {
            rewrite ^aa$ /downloadTORRENTZ.php break;
            root   /usr/share/nginx/html;
            index  index.html index.htm;
            rewrite  "^([A-Z0-9]{40})$" /file.php?ddl=$1 break;
        }
}
  1. Удалите "" из регулярного выражения
  2. запрос обычно начинается с / поэтому ваше регулярное выражение должно выглядеть как

    rewrite ^/([A-Z0-9]{40})$ /file.php?ddl=$1 break;

  3. У вас хеш ALLCAPS? Может тебе стоит использовать [a-zA-Z0-9]

  4. 40 символов ... Похоже на хеш sha1. Возможно, вам стоит упростить регулярное выражение до [0-9A-F]