问题标签 [locationmatch]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
242 浏览

apache - 根据 URL 参数触发 apache 身份验证

我只需要根据 URL 参数触发 apache 身份验证。例如,以下 URL http://mySillyApplication.com/items/browse?collection=9&sort_field=Title&num_items=10& ...我需要仅在 collection=9 时触发身份验证。我已经尝试了很多东西,但我找不到如何去做。我认为关键是找到一个可以激活 LocationMatch 的 RewriteRule .... 只是一个猜测:

谢谢。

0 投票
1 回答
1620 浏览

apache - Apache LocationMatch 匹配以...开头的 url

我正在使用 apache 将 AJAX 请求重定向到我的 AJAX 应用程序中的服务器后端。

以 /service/ 开头的所有内容都应该转到服务后端:

以 /auth 开头的所有内容都进入身份验证服务器:

我对我显然有效的解决方案感到满意,除非将身份验证通道添加到后端,并且我注意到他们的请求/service/auth/info不会被后端消耗,而是登陆身份验证服务器。

显然我有一些理解问题。我应该如何匹配以给定字符串开头的 URL,而不是在中间的某个地方包含它?

0 投票
0 回答
515 浏览

regex - apache 2.4 LocationMatch 没有捕捉到

我需要在虚拟主机中为不是 / 或 /example/{anything} 的所有内容设置 htaccess 指令。我已经查看了我能找到的所有内容,似乎 apache 正在使用正则表达式做一些奇怪的事情,我不知道为什么它不起作用。

这是我正在尝试的,也许有人可以帮助我。

我很难过我整天都在尝试不同的方法。

添加更多正则表达式的正面版本可以正常工作

按预期工作,只是负面版本总是失败。

0 投票
0 回答
90 浏览

apache - 未替换具有 LocationMatch-Hit 的 Apache Substitute

我对动态内容替换有疑问。Apache-Substitude 不会替换由 LocationMatch 或请求变量(如 %{REQUEST_URI})匹配的变量。

我的计划是代理一个页面并替换 base-href-content。
href="/" -> href="/proxy/https/my-app.de/"

典型的请求如下所示: https://my-proxy.localhost/proxy/https/my-app.de/

我尝试了许多拼写来访问这些变量。我尝试了使用正则表达式和没有 LocationMatch 的替换。我寻找替代品的替代品。

结果是,没有任何帮助
<base href="/proxy/{env:MATCH_PROTOCOL}/%{env:MATCH_TARGET}/" debug="%{REQUEST_URI} %{env:PROTOCOL} %{env:TARGET} $PROTOCOL %{HTTP:HOST}" />

0 投票
1 回答
1423 浏览

apache - LocationMatch 与 Location 不匹配(Apache 2.4)

我试图了解发生了什么LocationMatch。现在我有一个Location类似于以下内容,

接下来我只更改LocationLocationMatch,如下所示,并且效果很好。

但是,一旦我引入正则表达式,它就不再正确匹配。例如,我想匹配以 开头的路径/context

我已经多次阅读文档,似乎无法弄清楚为什么这个正则表达式不匹配。我还看到了诸如Apache LocationMatch 之类的 SOQ 匹配以...开头的 url,但是这个正则表达式不起作用。我VirtualHost在香草 Ubuntu apache2 上安装了一个单曲LocationMatch。整个 conf 文件看起来像这样,

我的问题是,应该<LocationMatch "^/context">匹配以/context? 例如,https://mydomain/context?如果这应该匹配,知道还有什么可能会干扰吗?我使用的是 2.4.41 版本,但至少从 2.4.6 开始我就看到了这种行为。谢谢

0 投票
1 回答
1132 浏览

regex - 阿帕奇位置匹配

Apache 问题:我有一个 wordpress 网站。我想用密码保护 wp 登录屏幕。我不想允许本地.htaccess。在我正在使用的虚拟主机中:

<LocationMatch "(/wp-admin/|/wp-login.php)"> AuthType Basic AuthName "Restricted Content" AuthUserFile /etc/apache2/.htpasswd Require valid-user </LocationMatch>

这有效,但我仍然能够通过 wordpress 的页面 id 访问登录屏幕:https://my.domain.com/?page_id=54 并且可以找到 LocationMatch 指令的正确语法。

<LocationMatch ".*">当然适用,但其他任何东西都不起作用,甚至不适用<LocationMatch ".*54$">

任何帮助将不胜感激。

0 投票
1 回答
147 浏览

apache - LocationMatch 中的命名组反向引用在 ProxyPassMatch 中无法识别

我的英语很差,这是我的第一个问题,所以希望我做对了;-)

我使用 Apache HTTPD 2.4.41 (Win64),我想使用以下 LocationMatch-Rule:

该规则似乎匹配,因为我收到来自后端服务器 (ElasticSearch) 的响应。响应正文显示某些内容不适用于命名组反向引用:

似乎命名的组反向引用尚未被识别,并且已直接传递到后端服务器而没有被解释。

至少,原始 URL 已被附加(如doc 中所述)。作为一种解决方法,我什至可以像这样离开它,但在我看来,这不是实现这一目标的正确方法。

关于命名组反向引用和变量似乎都未被 Apache 识别的原因的任何想法?我的 Apache 版本 (2.4.41) 也应该没问题,因为在 2.4.8 版本中引入了命名组反向引用。

我确实花了几个小时在 Stack Overflow 和 Google 上寻找类似的情况,但到目前为止没有任何帮助。

希望,有人可以帮忙!

0 投票
0 回答
37 浏览

apache - Apache 如何决定使用哪个 LocationMatch?

我们使用 Apache 2.4 将请求代理到我们的后端服务。为了做到这一点,我们使用一些 LocationMatch 指令将请求交给正确的服务。我们的两个 LocationMatch 指令如下所示:

如果您访问例如 http://localhost/api/some/api/stuff 第二条规则适用(这是正确的)

如果您访问 http://localhost/api/backend 第二条规则也适用(我认为这是不对的)

我不明白为什么它总是使用第二个 LocationMatch 虽然 http://localhost/api/backend 应该是第一个正则表达式的直接匹配。Apache 评估他的 LocationMatch 正则表达式是否有任何规则或特定顺序?我可以将 /(.*) 正则表达式视为始终优先于类似表达式的全部表达式吗?

0 投票
1 回答
29 浏览

apache - 带有正则表达式的 Apache LocationMatch 不起作用

我正在尝试将 apache 服务器(版本 2.4.46)配置为与正则表达式进行位置匹配。我什至尝试过官方文档中给出的正则表达式。

没有正则表达式它工作正常。

每当我添加正则表达式时。它给出了 404 not found 错误。这是我的虚拟主机配置

0 投票
0 回答
24 浏览

wordpress - 允许访问 .htaccess 中的特定端点

我有一个带有运输插件的 WordPress 网站,但它突然无法工作。插件的支持告诉我问题是因为插件的后端路由被重定向到主页,我可以通过允许访问所有端点来解决它,例如 "mysite.com/?myplugin_controller={ControllerName}&action={ActionName}" 其中{ControllerName} 和 {ActionName} 是变量组件。在我的 .htaccess 中,我没有看到从任何 URL 重定向到主页,经过大量研究,我没有找到如何允许访问所有这些端点。

我试过了

<LocationMatch "^/?myplugin_controller"> Allow from All </LocationMatch>

但它不起作用。

你能帮我吗 ?