Преобразование .htaccess управляет к nginx, не работающему

Правила .htaccess:

   RewriteEngine On
   RewriteCond %{QUERY_STRING} (.*)
   RewriteRule ^yon-(.*).mp4$ index.php?videodata=$1&yonlendir=true&%1 [NC]
   RewriteCond %{QUERY_STRING} (.*)
   RewriteRule ^(.*).mp4$ index.php?videodata=$1&%1 [NC]

Преобразованный в nginx:

   location /rigoplay {

   if ($query_string ~ "(.*)"){
   rewrite ^/yon-(.*).mp4$ /index.php?videodata=$1&yonlendir=true&%1;
   }
   if ($query_string ~ "(.*)"){
   rewrite ^/(.*).mp4$ /index.php?videodata=$1&%1;
   }
   }

Однако не работа, бросая 404, URL не становится переписанным вообще.

domain.com/rigoplay/Y0FNRDZCMGVGbGJWL2FmUjRkbm1ieGR1c2ZUaStscVRoR0h2M1F0YzV6VTI3ZS9YNkpxZVhhQ0c3dz09.mp4

-1
задан 18 October 2015 в 20:31
1 ответ
location /rigoplay/ {
   rewrite ^/rigoplay/yon-(.*)\.mp4$ /rigoplay/index.php?videodata=$1&yonlendir=true last;
   rewrite ^/rigoplay/(.*)\.mp4$ /rigoplay/index.php?videodata=$1 last;
}
  1. Вам не нужно , если и % 1 . Nginx автоматически добавляет строку запроса к перезаписанному запросу.
  2. Вы должны использовать полный URI в rewrite .
1
ответ дан 5 December 2019 в 19:50

Теги

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