Articles of 代理

剥离公司外部的文件 – 我应该使用哪个工具?

我有一个旧的Weblogic服务器上运行的应用程序。 我已经注意到,新的SSL证书不能很好的与我的旧的Java,我虽然build立一个卸载服务器来处理我通过https做的请求来检索客户数据。 我试图完成的是build立一个新的服务器,应该作为一个HTTP隧道的HTTP,我正在考虑在服务器上设置path对应我的客户在以下方式: Weblogic使用URL / cust01 / path-to-data调用网桥服务器。 然后,桥接器使用SSL使用相同的数据path调用客户的服务器 服务器将其返回给Weblogic cust02同样的东西等等。 这可能需要一个所有客户的表,他们的别名(“cust02”)和相应的外部URL。 另一种方式,但在这里我必须承认,我完全失去了,将保持来自Weblogic的URL,但不知何故切换http …到https …当它通过中间服务器。 我已经尝试过使用apache2和mod_proxy,但不知道我是否正确。 到目前为止,我已经成功地将本地地址“富”pipe道给谷歌,但问题是,我用于testing的浏览器显示谷歌网页,但也改变了url。 似乎我转移到谷歌,当我试图访问远程服务器上的文件时,我得到一个错误。 什么是最简单的方法来完成这个? Apache是​​正确的工具,还是应该在其他地方search?

与nginx服务器一起设置Node应用程序

我正在尝试设置一个新的节点,以及我以前的PHP应用程序。 脚本 php应用程序在www.xyz.com运行。 它使用nginx来提供。 节点应用程序通过端口8142上的NodeJs服务器提供服务。 我想在链接www.xyz.com/nodeApp上服务NodeJs应用程序 我试过了 我的方法是将所有在www.xyz/nodeApp上www.xyz/nodeApp的请求都代理到端口8142,节点服务器将在端口8142处接收请求。 我将以下代理conf添加到www.xyz.com的nginx文件。 location ~ ^/nodeApp(.*)$ { proxy_http_version 1.1; proxy_pass_request_body on; proxy_set_header Host $host; proxy_set_header Scheme $scheme; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://127.0.0.1:8142$1$is_args$args; proxy_buffering off; } 结果 打到www.xyz.com/nodeApp/ ,一切正常。 节点服务器提取请求,并在www.xyz.com/nodeApp/app.js等链接中提供css和js文件。 但是(没有后面的斜线) 点击www.xyz.com/nodeApp ,它不起作用。 节点服务器提取请求并正确提供html页面,但是css和js文件在链接www.xyz.com/app.js等处提供。所以应用程序中断。 我错在哪里? 我的节点服务器文件 var express = require("express"); var app = express(); app.use(express.static(__dirname + '/build')); […]

502代理错误的Apache反向代理

以下是我的https代理虚拟主机conf <VirtualHost *:443> ServerAdmin [email protected] ServerName example.openjuice.co ProxyRequests off SSLEngine on SSLProxyEngine On SSLCertificateFile /etc/ssl/cert/certs/apache.crt SSLCertificateKeyFile /etc/ssl/cert/certs/apache.key <Proxy *> Order deny,allow Allow from all </Proxy> <Location /> ProxyPass https://localhost:3006/ ProxyPassReverse https://example.openjuice.co:3006/ </Location> </VirtualHost> 但是我得到错误 代理错误 代理服务器收到来自上游服务器的无效响应。 代理服务器无法处理请求GET /。 原因:从远程服务器读取错误 请帮助我

使用代理获取所有HTTPstream量

我想设置一个代理服务器,获取我的networking上的所有HTTPstream量。 我想使用安装在Debian上的Squid。 在networking图下面: 我不想在我的局域网上设置代理服务器,因为我无法在每台计算机上configuration一个代理服务器。 有人能告诉我什么是最好的办法吗?

ipv6代理转发导致错误的请求

我configuration了Apache的httpd服务器来充当代理转发器。 以下是我的conf文件的详细信息 Listen 0.0.0.0:9999 Listen [::]:9999 <VirtualHost *:9999> SSLEngine off SSLProxyEngine On SSLCertificateFile /etc/httpd/ssl/ca.crt SSLCertificateKeyFile /etc/httpd/ssl/ca.key ProxyRequests Off ProxyPreserveHost On RewriteEngine on RewriteRule ^/rest/v1/ https://%{HTTP_HOST}/rest/v1/ </VirtualHost> 我正在使用curl客户端 对于IPv4: curl http://192.168.56.11/rest/v1/ –proxy 0.0.0.0:9999 -v 它工作正常,我得到了正确的结果 对于IPv6: curl -6 http:// fe80 :: 2:0:9:1%eth1 / rest / v1 / –proxy [::]:9999 -v 与ipv6呼叫失败,我得到的响应代码为“400”。 以下错误消息在error_log中显示为此ipv6请求 [错误] [client :: 1]请求失败:读取头文件时出错 […]

Apache HTTPD:具有代理和目录别名的虚拟主机的URLparsing

以下是我的环境: REST api (django),在端口http://server:8107/api上通过WSGI(mod_wsgi)运行 API网站的静态文件 (我有一些pipe理页面),在一个目录中,说/opt/wsgi/staticfiles/subdomain 运行在pm2 / nodejs上的Web应用程序 (expressjs)在http://server:3002/ 我需要将所有这些在端口80上的虚拟主机下进行分组,如下所示: http://subdomain.server/api :其余的API http://subdomain.server/api/static :API网站所需的静态文件 http://subdomain.server/ :web应用程序 以下是configuration的相关部分: <VirtualHost *:80> ServerName subdomain.server ServerAlias subdomain.server.local Alias /api/static/ /opt/wsgi/staticfiles/subdomain/ <Directory /opt/wsgi/staticfiles/subdomain/ > Order Allow,Deny Allow from All Options -Indexes IndexOptions Charset=UTF-8 </Directory> ProxyPass /api http://127.0.0.1:8107/api ProxyPassReverse /api http://127.0.0.1:8107/api ProxyPass / http://127.0.0.1:3002/ ProxyPassReverse / http://127.0.0.1:3002/ </VirtualHost> 现在,当我尝试访问一个静态资源(比如说/api/static/js/jquery.js )时,我发现URL并不是由Alias指令首先parsing,而是传递给WSGI应用程序( […]

dynamic代理第三方内容到https

我使用的是java和apache,我在我的安全页面上托pipe非安全的第三方内容,当我在Facebook上分享我的页面时,facebooks选项卡不显示不安全的内容。 我碰到一篇描述这种行为的文章,我正在寻找纠正这个问题。 https://www.tabsite.com/blog/chrome-and-other-browsers-not-showing-insecure-content/ 由于我的内容提供商不提供安全的内容,我的想法是使用Apache将我的安全URL代理给第三方非安全URL。 我将如何去做我的代理dynamic,以便我不会一致地修改我的服务器映像? 我最初的想法是在我的域名之前加上第三方url https://images.example.com?url=http://content-provider.com/image/1234.jpg 并parsing它与Apache重写或其他东西,但我不知道这是一个合适的解决scheme。 我正在寻找一些想法和build议。 我如何使用mod_rewrite重写URL到查询参数? 我试着写下面的代码,但没有成功 https://images.example.com?url=http://content-provider.com/image/1234.jpg RewriteCond %{QUERY_STRING} ^url=(.*)$ [NC] RewriteRule (.*)$ %1 [NC,L,R=301] 我希望http://content-provider.com/image/1234.jpg

https通过仅http代理?

我的组织通过代理引导所有stream量。 作为代理设置,我们需要为http_proxy和https_proxy环境variables使用http代理设置。 如果我将https_proxyvariables设置为相同代理的https版本,则某些使用https_proxy envvariables的程序将停止工作。 那么这是否意味着代理不支持https连接? 那么在我的浏览器中正常加载的https网站呢?

在CentOS7上使用Squid的CA证书问题

我在CentOS 7(一个Diladele设备)上pipe理运行Squid 3.5.10的公司Web代理,做SSL碰撞,并且在系统信任存储中添加新的CA证书时遇到一些麻烦,这导致我们的用户不能能够访问他们应该能够访问的几个受SSL保护的站点。 其中一个网站是https://www.sexierdating.com/ (是的,这听起来像是,但我们的政策是不在乎午餐时间人们冲浪的时间,只要它是合法的)。 来自Squid的错误消息通常是X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT_LOCALLY ,这意味着由于某些原因Squid不信任或不能validation目标服务器证书。 到目前为止,从CA的支持页面抓取PEM格式的CA根证书,放入/etc/pki/ca-trust/source/anchors ,运行update-ca-trust并重新启动squid足以解决问题 – 但不是在我目前的情况下。 ca-certificates包是当前版本,因为我只是在机器上运行了一个完整的yum更新。 我目前遇到的所有域名都有“Go Daddy安全证书颁发机构 – G2”证书。 我从他们的支持页面( https://certs.godaddy.com/repository/ )下载了每个证书,如上所述安装它们,重新加载鱿鱼,但错误仍然存​​在。 我甚至用strace来观察update-ca-trust,看看它是否真正提取了正确的PEM文件 – 而且确实如此。 我奇怪的是,certs.godaddy.com下载页似乎使用了与某些有问题的域完全相同的根和中间证书,但该页面在Squid中正常工作。 当我比较Firefox中的证书时,我没有看到整体规范和algorithm有什么不同,但是仍然有效,其他方法则不行。 我在智慧结束,希望有人可以刺激我正确的方向来解决这个..我不能去GoDaddy证书的每一个第二页添加代理例外..

IPv4到IPv6代理/直通

我最近有一个应用程序在iOS(现在)强制性的IPv6testing中被拒绝(甚至不知道他们这样做)。 我的服务器(在AWS上)没有为IPv6设置,但我已经修复了适当的DNS和路由。 它在http://ready.chair6.net/通过testing 到目前为止,我做了一些研究,看到你可以在家里使用互联网连接共享(即:NAT64)在Mac OS X上欺骗一个IPv6networking。所以,我做了这个,并分配了一个V6地址到iPhone与我的应用程序它和一切工作正常。 但是,这并不是真的testing苹果将要做的整个端到端的连接,因为一旦它碰到Mac,它会回到v4。 我试图找出一种方法,我可以testing整个v6连接到我的服务器。 现在我假设我的家庭互联网将只提供IP4。 我目前的想法是在数字海洋/等设置虚拟机/液滴。 他们可以同时分配v4和v6。 进一步的研究表明,无论是“socat”还是“squid cache”,都可能能够侦听IP4端口/地址,并且路由到在同一台机器上传出的IP6地址,以继续到IP6上的应用服务器的path。 虽然我在细节上有些迷失。 我如何通过IP4将我的客户端连接到虚拟机? 我必须隧道吗? 我可以在Firefox中设置代理吗? 如何通过此连接传递DNS请求,以便我的DNS服务器以IP6地址响应而不是v4响应? 我相信还有很多其他的问题我现在没有想到。 任何想法如何做到这一点? 谢谢!