相关疑难解决方法(0)

Apache mod_proxy url编码

我有一个REST服务,接受表单/ {parameter}中的参数

还有Apache2将请求转发给Web服务

<VirtualHost *:9091>
  AllowEncodedSlashes NoDecode
  LogLevel debug
  ProxyPass /webservice balancer://api/webservice

  <Proxy balancer://api>
     BalancerMember http://localhost:8030
  </Proxy>
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)

参数可能包含编码字符,例如%2f(/)

问题是Apache再次编码这些字符,Webservice收到%252F而不是%2F

[Mon Oct 15 13:59:24 2012] [debug] mod_proxy_balancer.c(46): proxy: BALANCER: canonicalising URL //api/webservice/Interface GigabitEthernet1%2F0%2F2
[Mon Oct 15 13:59:24 2012] [debug] mod_proxy_balancer.c(581): proxy: BALANCER (balancer://api) worker (http://localhost:8030) rewritten to http://localhost:8030/Interface%20GigabitEthernet1%252F0%252F2%20Utilization
Run Code Online (Sandbox Code Playgroud)

如果我直接请求webservice,Tomcat/Jetty会处理它,并且服务会收到正确的参数.

apache mod-proxy url-encoding

12
推荐指数
1
解决办法
7978
查看次数

无法匹配mod_rewrite中的%2F

我有一组重写规则(在.htaccess中),如下所示:

RewriteRule ^list/vendor/(.*)$ list.php?vendor=$1
RewriteRule ^list/product/(.*)$ list.php?product=$1
RewriteRule ^list/(.*)$ list.php?search=$1
Run Code Online (Sandbox Code Playgroud)

(我不认为前两个与我的问题有关).

当我输入myserver.com/list/foo%2Cbar或甚至myserver.com/list/foo/bar,我得到我期望的结果:list.php被调用with foo,bar和foo/barin $_GET['search'].

但如果我输入myserver.com/list/foo%2Fbar,似乎规则不匹配!我得到了404错误.这可以发生什么?Apache 2.2.14,如果重要的话.

(我在Firefox和Chrome中尝试过相同的结果 - 但当然可能是浏览器正在运行).

mod-rewrite apache2 url-rewriting

7
推荐指数
1
解决办法
4223
查看次数

通过Nexus 3.2代理通过范围划分的NPM项目

目前,我一直在设置Nexus 3.2,尤其是NPM存储库。我有一个代理存储库,指向registry.npmjs.org我已成功发布到同一实例上的托管存储库,以及使用实例通过组存储库下载工件npm update -g。

不幸的是,通过该小组下载范围内的项目无法正常工作,这对于进行Angular 2开发至关重要。当我尝试时,出现404错误:

brian$ npm install "@angular/common"
npm ERR! registry error parsing json
npm ERR! Unexpected token < in JSON at position 0
npm ERR! <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
npm ERR! <html><head>
npm ERR! <title>404 Not Found</title>
npm ERR! </head><body>
npm ERR! <h1>Not Found</h1>
npm ERR! <p>The requested URL /nexus/repository/npm_group/@angular/common was not found on this server.</p>
npm ERR! </body></html>
npm ERR! 

npm ERR! A complete log of this run can be …
Run Code Online (Sandbox Code Playgroud)

nexus npm nexus3

1
推荐指数
1
解决办法
1416
查看次数