KTOR 中的 .htaccess 等效项

Posted

技术标签:

【中文标题】KTOR 中的 .htaccess 等效项【英文标题】:.htaccess equivalent in KTOR 【发布时间】:2018-06-25 02:26:21 【问题描述】:

为了允许在我的网站的元素中播放视频,但不允许通过直接链接播放,我在包含源视频的子目录中创建了 .htaccess,仅此而已。使用以下代码:

RewriteEngine On
RewriteCond %REQUEST_URI \.(mp4|mp3|avi)$ [NC]
RewriteCond %HTTP_REFERER !^http://sample.com/.*$ [NC]
RewriteRule ^.* - [F,L]

我需要对ktor服务器做同样的事情,但不知道怎么做?

任何帮助。谢谢。

【问题讨论】:

【参考方案1】:

我认为最好的方法是在应用程序中添加interceptor 并直接应用这些规则:

intercept(ApplicationCallPipeline.Infrastructure) 
    // If call matches conditions
    if (call.request.path().endsWith(".mp4") && call.request.headers["Referrer"] != "http://sample.com/video.html") 
        // respond with 400 Bad Request
        call.respond(HttpStatusCode.BadRequest)
        // and stop processing further
        finish()
    

【讨论】:

以上是关于KTOR 中的 .htaccess 等效项的主要内容,如果未能解决你的问题,请参考以下文章

为啥我的 .htaccess 文件重定向到完整的服务器路径而不是相对路径?

防止 SQL 注入的 Htaccess 和 Mysqli 方法之间的区别

如何在 .htaccess 中将路径附加到 PHP include_path

构建 iOS 框架时未找到 Ktor 和 kotlinx 依赖项

TypeScript 中的 querySelectorAll 等效项

猪中的组 concat 等效项?