apache - 使用 htaccess 重定向到同一个域
问题描述
当设置了特定的 HTTP_REFERRER 时,我想通过 htaccess 重定向用户。这是我目前的 htaccess
RewriteEngine On
RewriteCond %{HTTP_REFERER} ^(.*)\.example.org [NC]
RewriteRule ^(.*)$ https://example.com/blocked/$1 [L,R]
我现在面临的问题是 HTTP_REFERRER 仍然存在,并且我在 endles 重定向中结束/blocked/blocked/blocked
有什么简单的方法可以简单地将用户重定向/转发到/blocked?
解决方案
您需要/blocked
在 Rewrite 中排除 URI 以避免循环错误
RewriteEngine On
RewriteCond %{HTTP_REFERER} ^(.*)\.example.org [NC]
RewriteCond %{REQUEST_URI} !/blocked
RewriteRule ^(.*)$ https://example.com/blocked/$1 [L,R]
推荐阅读
- html - 活动管理员表单:按条件在单独面板中输入 has_many
- c# - 复制匹配 id 的值
- dom - 通过 javascript 进行的画布渲染如何正常工作?
- r - dbWriteTable:只有在 DDL 语句之后的 ET 或空语句是合法的。)
- azure-active-directory - 逻辑应用和 Webhook 之间的身份验证
- java - 我们如何在java中增加或减少日期(JUST DATE)
- heroku-postgres - 在 heroku CLI pg:killall 抛出错误
- ios - 从 Swift 中的 iOS 应用程序,如何打开 facebook 应用程序到个人资料页面的特定部分
- c# - 使用 C# 的具有 Cortana 技能的 Azure Bot 框架
- reactjs - 将 jsx 转换为 tsx 的问题