htaccess 使用 get 变量重写一种文件类型

发布于 2024-11-10 13:16:55 字数 565 浏览 0 评论 0原文

我认为标题很混乱,这就是情况。

我托管一些视频文件并想在我的网站上使用。但仅限于我的网站。如果你意识到 Facebook 这样做了。但我们没有像它们这样的服务器 - 我猜是 nginx -。

最后我想将所有请求重定向到某个页面。就像这样,

如果有人请求

http://www.blabla.com/videos/1.mpg?hash=12345&expire=1234567

htaccess 将该请求重定向到,

http://www.blabla.com/check.php?file=videos/1.mpg&hash=12345&expire=1234567

但如果有人输入,

http://www.blabla.com/videos/1.mpg

它也会重定向到 check.php

http://www.blabla.com/check.php?file=videos/1.mpg

i think header is confusing, here is the situation.

i host some video files and want to use on my website. but only on my website. if you realized facebook did this. but we dont have servers like them -nginx i guess-.

finally i want to redirect all requests to a certain page. like that

if someone request that

http://www.blabla.com/videos/1.mpg?hash=12345&expire=1234567

htaccess redirect that request to

http://www.blabla.com/check.php?file=videos/1.mpg&hash=12345&expire=1234567

but also if someone type

http://www.blabla.com/videos/1.mpg

it is also redirect to check.php

http://www.blabla.com/check.php?file=videos/1.mpg

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

十六岁半 2024-11-17 13:16:55
RewriteCond %{QUERY_STRING} ^hash=(.*)$ 
RewriteRule ^(.*)/videos/(.*)$ /check.php?file=videos/$2 [R=302,L,QSA]

现在,仅当查询字符串包含 hash=xxxxx 时,才会应用您的 rewriteRule

如果您希望用户永久重定向,请使用 R=301

RewriteCond %{QUERY_STRING} ^hash=(.*)$ 
RewriteRule ^(.*)/videos/(.*)$ /check.php?file=videos/$2 [R=302,L,QSA]

Now your rewriteRule will only be applied if query string contains hash=xxxxx

use R=301 if you want users to be redirected permanently

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文