如何从.htaccess或NGinx中的网址格式中分割字符串?
网址格式:
domain.sample.com/test-1.2.1/dir/version.com/media/azybIVcgifgod.mp4
预期输出应该像,
opt/test/storage/versin.com/a/zy/bI/azybIVcgifgod.mp4
在这里,我必须将字符串 azybIVcgifgod.mp4
拆分为 a/zy/bI/azybIVcgifgod.mp4
请帮帮我!
谢谢!
答案 0 :(得分:0)
您的问题提及了nginx
和Apache的.htaccess
文件。这个答案是nginx
具体的。
要映射此网址:
http://example.com/foo/bar/media/abcdefghijklm.mp4
到位于此处的本地文件:
/path/to/storage/a/bc/de/abcdefghijklm.mp4
您可以使用正则表达式location
block或rewrite...break
来提取构造真实路径名所需的URI部分。
在下面的示例中,rewrite...break
用于将路径的最后一个元素拆分为四个捕获:
location /foo/bar/media/ {
root /path/to/storage;
rewrite /((\w)(\w\w)(\w\w)[^/]+)$ /$2/$3/$4/$1 break;
}