我们有一个Apache转发代理向数千台后端服务器发送请求。 服务器有问题,因为它们需要初始质询请求(无需身份validation)和下一个请求(身份validation)在同一个http连接上。 我们无法在任何合理的时间范围内确定这一点。 所以我们希望转发代理使用相同的连接,可能通过连接池? 默认情况下,Apache转发代理只要收到响应就closures连接。 这是devise “正向代理的默认工作人员没有使用连接池的天真的意义。 它会在每个请求后closures每个连接。 涩谷stream二郎正在观察的是,Apache发出的信号表示,即使在正向代理模式下,它也会保持连接打开,但是随后会closures连接。 我们正在讨论一个解决办法,即从一开始就默认向前和尊敬的代理工作人员发出“连接:closures”信号。 “ 有一些build议可以解决: “你可以定义显式的工作者(例如,使用ProxyPass进行反向操作,而Rüdiger也可能使用正向代理模式,然后使用HTTP Keep-Alive(默认情况下取决于多个configuration选项)” 但我不知道该怎么做。 与ProxySet的东西,可能? 这个问题是,我需要以某种方式指定的URL,但这是一个转发代理 – 有许多可能的原始服务器,我不能枚举它们在前面。 我们应该如何configuration的东西来获得这个连接重用?
我有麻烦得到proxypass在Apache中工作。 我的configuration文件如下: <VirtualHost 1.2.3.4:443> ServerName example.com ServerAlias www.example.org ServerAdmin [email protected] DocumentRoot /home/admin/web/knyz.org/public_html ScriptAlias /cgi-bin/ /home/admin/web/knyz.org/cgi-bin/ Alias /vstats/ /home/admin/web/knyz.org/stats/ Alias /error/ /home/admin/web/knyz.org/document_errors/ #SuexecUserGroup admin admin CustomLog /var/log/apache2/domains/knyz.org.bytes bytes CustomLog /var/log/apache2/domains/knyz.org.log combined ErrorLog /var/log/apache2/domains/knyz.org.error.log <Directory /home/admin/web/knyz.org/public_html> AllowOverride All SSLRequireSSL Options +Includes -Indexes +ExecCGI </Directory> <Directory /home/admin/web/knyz.org/stats> AllowOverride All </Directory> SSLEngine on SSLVerifyClient none SSLCertificateFile /home/admin/conf/web/ssl.knyz.org.crt SSLCertificateKeyFile /home/admin/conf/web/ssl.knyz.org.key […]
我在我的个人服务器上设置了gitlab,并使用了这个答案和这个答案 (还有一些input来使它与我的apache安装一起工作。一切工作正常,当我去gitlab.example.com,我看到gitlab UI ,可以创build帐户等,但是当我检查了我转发的URI时,就是这样 https://gitlab.example.com//users/sign_in (注意域名后面的两个斜杠)。 这不是一个真正的问题,但我想知道这是为什么,我怎样才能解决这个问题 – 特别是因为当我从地址中删除一个斜线时,它工作的很好。 (所以https://gitlab.example.com/users/sign_in是完全一样的)。 事实上,我得到了两次转发: GET https://gitlab.example.com => 301 Moved Permanently Location:https://gitlab.example.com/ GET https://gitlab.example.com/ => 302 Found Location:https://gitlab.example.com//users/sign_in 这是我的apacheconfiguration文件(`/etc/apache2/sites-enabled/gitlab.conf): <IfModule mod_ssl.c> <VirtualHost *:443> ServerName gitlab.example.com ServerSignature Off ProxyPreserveHost On ProxyPassMatch ^(/[^/]+\.(html|png|ico|css|txt))$ ! ProxyPass /assets ! <Location /> Order deny,allow Allow from all ProxyPassReverse http://127.0.0.1:8080 ProxyPassReverse http://gitlab.example.com </Location> RewriteEngine on […]
好的,我知道当我提出一个与“我的世界”有关的问题时,我冒着大量的失望。 如果在这个问题上有任何格式错误(我这里是你的第一个问题),我要求提前原谅。 我也花了10多个小时尝试和谷歌search,但我找不到任何解决我面临的问题。 但在这里呢: 我的设置包含两台服务器,一台用于托pipe网站,另一台用于完成繁重的工作(例如“我的世界”)。 我使用Spigot为一些插件供电,其中一个插件是dynmap(这是一个用于在线显示世界和玩家的交互式地图)。 有关dynmap的更多信息在这里: https : //github.com/webbukkit/dynmap 无论如何,我想在我的web服务器上使用ReverseProxy,并且代理dynmap内容,这样我就可以closures路由器上的一些端口。 目前我刚刚在端口8123上向我的Minecraft服务器做了端口转发。 在webbserver上,我正在运行apache2.4,并且已经安装了mod_proxy和mod_proxy_html。 我也在HTTP和HTTPS的vhost文件中定义了这个: ProxyRequests off ProxyPass "/map" "http://192.168.2.31:8123/" ProxyPassReverse "/map" "http://192.168.2.31:8123/" 这应该是相当自我解释。 但是当我访问页面[WEBSITE] /地图,我迎接一个白色的空白页面。 我得到这个你: <title>Minecraft Dynamic Map</title> <meta charset="utf-8" /> <meta name="keywords" content="minecraft, map, dynamic" /> <meta name="description" content="Minecraft Dynamic Map" /> <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no" /> <!– These 2 lines make […]
我只想要https://www.google.com/recaptcha/api/siteverify而不是https://www.google.com/ <ProxyMatch "^https://www.google.com/recaptcha/api/siteverify[^/]+)"> 但它似乎阻止了一切,而不是让它通过。 是否有可能只在一个非常具体的URL白名单
是否有可能重写/代理一个URL到另一个具有不同path的URL? 它不应该只是一个redirect,而应该是其他URL的内部代理,以便浏览器地址栏只显示原始URL。 请注意,这两个url的域名/主机名称会有所不同。 请build议。 eg Rewrite or Proxy from, https://www.example1.com/a/b to https://www.example2.com/p/q/r
我试图在ubuntu 16.04上configurationApache(2.4.18)作为转发代理,允许在几个子网上的工作站访问互联网上的select网站。 我已经设法configurationmod_proxy并限制访问特定的子网,我的问题是限制工作站能够通过代理服务器访问哪些URL的最佳方法。 我有一个谷歌,看了看Apache文档,但似乎无法find一个这样做的方法,理想情况下,我只想要一个网站的白名单,Apache将代理了。 我曾经想过使用iptables简单地将连接删除到白名单网站,但这似乎不是可扩展的,我宁愿在可能的情况下在apacheconfiguration中定义它。
我正在devise一个基于networking的科学计算平台的服务,涉及上传大量数据文件(很多GB)。 每个文件还包含标头中的cookie,允许我的服务器对用户进行身份validation。 多个用户可能一次上传这些文件。 这些文件必须使用SSL进行encryption,并且将所有请求发送到我们主要的面向Web的域名(这个域名有一个处理所有请求的Apache服务器)是很好的(但不是绝对必要的)。 我们的服务器托pipe在Google Compute引擎上。 我有多个后端服务器用于实际处理数据文件,目前正在使用mod_proxy将数据请求代理到后端服务器。 但是,即使使用代理,所有的数据在被发送到后端服务器之前仍然stream经面向networking的服务器。 这可能很容易陷入面向networking的服务器和我的网站。 我的问题是:这种情况通常如何处理? (对不起,我不是一个IT人,但必须自己实现) 在这些情况下是使用redirect代替代理吗? 我已经尝试了redirect,但原始头信息丢失,后端服务器无法检索身份validationCookie。
我在这里遇到了一些麻烦。 我有这几个重写规则,我认为不起作用。 我的主要目的是限制页面,只允许特定的IP或networking块。 RewriteEngine On RewriteLog "/data/wre/var/logs/modrewrite.log" RewriteLogLevel 5 RewriteCond %{REMOTE_ADDR} !^192\.168\.10\..* RewriteCond %{REMOTE_ADDR} !^72\.139\.201\..* RewriteCond %{REMOTE_ADDR} !^129\.233\.4\..* RewriteCond %{REMOTE_ADDR} !^208\.118\.97\32 RewriteRule ^/solutions https://example.com/account/signin?go=outside [R,NE,NC] 我再次testing,似乎不工作? 我做错了吗?
我想configuration通过AJP代理的Jira-Access。 我遵循这个howto 在server.xml中激活AJP: <Connector port="8089" redirectPort="8444" enableLookups="false" protocol="AJP/1.3" URIEncoding="UTF-8"/> 编辑VHOSTconfiguration: # Load Proxy-Modules LoadModule proxy_module /usr/lib/apache2/modules/mod_proxy.so LoadModule proxy_http_module /usr/lib/apache2/modules/mod_proxy_http.so # Load AJP-Modules LoadModule proxy_ajp_module /usr/lib/apache2/modules/mod_proxy_ajp.so # Proxy Configuration <IfModule proxy_http_module> ProxyRequests Off ProxyPreserveHost On # Basic AuthType configuration <Proxy *> AuthType Basic AuthName Bamboo-Server AuthUserFile /var/www/userdb Require valid-user AddDefaultCharset off Order deny,allow Deny from all […]