Я пробовал несколько разных вещей, которые нашел на этом сайте, но, похоже, ничего не работает
я собираюсь перенаправить с помощью nginx из одного медиафайла в другой, используя данные arument для создания другого URL-адреса
, мой первый URL-адрес выглядит так
http://domain:port/video/media.php?mediaid=00000
, мне нужно использовать этот URL-адрес для перенаправления на
http://domain:port/mediaid/dash/playlist.mpd
, это последнее, что я пробовал, и это вроде работает, но все еще содержит / video / перед желаемым URL-адресом
if ($arg_mediaid) {
rewrite ^/video/(.*) ^/$arg_channelId/dash/playlist.mpd;
}
Это потому, что вы не удаляете / видео
из URL. Вы просто сопоставляете его.
Либо обновите существующее регулярное выражение, либо попробуйте добавить это правило перезаписи после текущего правила.
rewrite ^/video(/.*)$ $1
Это удаляет бит / video
из пути и заменяет его тем, что идет после / video /
, которое будет вашим, / $ arg_channelId / dash / playlist .mpd
Вы можете попробовать следующий подход:
location /video {
try_files /$arg_channelId/dash/playlist.mpd =404;
}
Лучше избегать if
, потому что он имеет всевозможные побочные эффекты.