2010-01-30 7 views
1

Windows 2003의 포트 8085에서 실행되는 Java 응용 프로그램 (Atlassian Bamboo)이 있습니다. http : // bamboo : 8085로 액세스 가능합니다.IIRF 역 프록시 문제

IIRF를 사용하여 IIS6 용 역방향 프록시를 설정하려고하므로 콘텐츠에
http : // bamboo를 통해 액세스 할 수 있습니다. IP를 정확하게 설정 한 것으로 보이며 상태 페이지를 검색 할 수 있습니다. 내가 HTTP에 입력 할 때

RewriteLog c:\temp\iirf 
RewriteLogLevel 2 
StatusUrl /iirfStatus 
RewriteCond %{HTTP_HOST} ^bambooi$ [I] 
#This setup works 
#ProxyPass ^/(.*)$   http://othersite/$1 
#This does not 
ProxyPass ^/(.*)$   http://bamboo:8085/$1 

그러나 : IE에서 // 대나무, 나는 '페이지를 표시 할 수 없습니다'메시지가 이 내 IIRF.ini이 같은 모습입니다. FF는 아무 것도 반환하지 않습니다. Wireshark 네트워크 덤프를 만들었으며 'TCPstream을 따르십시오'를 선택했는데 올바른 페이지가 검색되고있는 것 같습니다. 왜 그걸 볼 수 없습니까? 그래서 솔루션에 매우 근접해야 //bamboo/favicon.ico .. 이것은 와이어 샤크의 출력 :

GET/HTTP/1.1 
Accept: image/gif, image/jpeg, image/pjpeg, image/pjpeg, application/x-shockwave-flash, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, application/x-ms-application, application/x-ms-xbap, application/vnd.ms-xpsdocument, application/xaml+xml, */* 
Accept-Language: en-gb 
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729) 
Accept-Encoding: gzip, deflate 
Host: bamboo 
Connection: Keep-Alive 
Cookie: JSESSIONID=wpsse0zyo4g5 

HTTP/1.1 200 200 OK 
Date: Sat, 30 Jan 2010 09:19:46 GMT 
Server: Microsoft-IIS/6.0 
Via: 1.1 DESTINATION_IP (IIRF 2.0) 
Content-Type: text/html; charset=utf-8 
Transfer-Encoding: chunked 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 
<head> 
<title>Dashboard</title> 
<meta http-equiv="content-type" content="text/html; charset=UTF-8" /> 
<meta name="robots" content="all" /> 
<meta name="MSSmartTagsPreventParsing" content="true" /> 

<meta http-equiv="Pragma" content="no-cache" /> 
<meta http-equiv="Expires" content="-1" /> 

<link type="text/css" rel="stylesheet" href="/s/1206/1/_/scripts/yui-2.6.0/build/grids/grids.css" /> 
<!--<link type="text/css" rel="stylesheet" href="/s/1206/1/_/scripts/yui/build/reset-fonts-grids/reset-fonts-grids.css" />--> 
<link rel="stylesheet" href="/s/1206/1/_/styles/main.css" type="text/css" /> 
<link rel="stylesheet" href="/s/1206/1/_/styles/main2.css" type="text/css" /> 
<link rel="stylesheet" href="/s/1206/1/_/styles/global-static.css" type="text/css" /> 
<link rel="stylesheet" href="/s/1206/1/_/styles/widePlanList.css" type="text/css" /> 
<link rel="stylesheet" href="/s/1206/1/_/styles/forms.css" type="text/css" /> 
<link rel="stylesheet" href="/s/1206/1/_/styles/yui-support/yui-custom.css" type="text/css" /> 
<link rel="shortcut icon" href="/s/1206/1/_/images/icons/favicon.ico" type="image/x-icon"/> 
<link rel="icon" href="/s/1206/1/_/images/icons/favicon.png" type="image/png" /> 
<link rel="stylesheet" href="/s/1206/1/_/styles/bamboo-tabs.css" type="text/css" /> 

<!-- Core YUI--> 
<link rel="stylesheet" type="text/css" href="/s/1206/1/_/scripts/yui-2.6.0/build/tabview/assets/tabview-core.css"> 
<link rel="stylesheet" type="text/css" href="/s/1206/1/_/scripts/yui-2.6.0/build/tabview/assets/skins/sam/tabview-skin.css"> 

<script type="text/javascript"   src="/s/1206/1/_/scripts/yui-2.6.0/build/yahoo/yahoo-min.js"></script> 
<script type="text/javascript"   src="/s/1206/1/_/scripts/yui-2.6.0/build/event/event-min.js" ></script> 
<script type="text/javascript"   src="/s/1206/1/_/scripts/yui-2.6.0/build/dom/dom-min.js" ></script> 
<!--<script type="text/javascript"   src="/s/1206/1/_/scripts/yui-2.6.0/build/animation/animation.js" ></script>--> 

<!-- Container --> 
<script type="text/javascript"   src="/s/1206/1/_/scripts/yui-2.6.0/build/container/container-min.js"></script> 
<script type="text/javascript"   src="/s/1206/1/_/scripts/yui-2.6.0/build/connection/connection-min.js"></script> 
<link type="text/css" rel="stylesheet" href="/s/1206/1/_/scripts/yui-2.6.0/build/container/assets/container.css" /> 

<!-- Menu --> 
<script type="text/javascript"   src="/s/1206/1/_/scripts/yui-2.6.0/build/menu/menu-min.js"></script> 
<link type="text/css" rel="stylesheet" href="/s/1206/1/_/scripts/yui-2.6.0/build/menu/assets/menu.css" /> 

<!-- Tab view --> 
<!-- JavaScript Dependencies for Tabview: --> 
<script type="text/javascript"   src="/s/1206/1/_/scripts/yui-2.6.0/build/yahoo-dom-event/yahoo-dom-event.js"></script> 
<script type="text/javascript"   src="/s/1206/1/_/scripts/yui-2.6.0/build/element/element-beta-min.js"></script> 
<!-- Needed for old versions of the YUI --> 
<link rel="stylesheet" href="/s/1206/1/_/styles/yui-support/tabview.css" type="text/css" /> 
<link rel="stylesheet" href="/s/1206/1/_/styles/yui-support/round_tabs.css" type="text/css" /> 

<script type="text/javascript"   src="/s/1206/1/_/scripts/yui-2.6.0/build/tabview/tabview-min.js"></script> 

<script type="text/javascript"   src="/s/1206/1/_/scripts/yui-2.6.0/build/json/json-min.js"></script> 
<script type="text/javascript" src="/s/1206/1/_/scripts/yui-ext/yui-ext-nogrid.js"></script> 

<script type="text/javascript" src="/s/1206/1/_/scripts/bamboo.js"></script> 

<script type="text/javascript"> 
    YAHOO.namespace('bamboo'); 
    YAHOO.bamboo.tooltips = new Object(); 
    YAHOO.bamboo.contextPath = ''; 
    YAHOO.ext.UpdateManager.defaults.loadScripts = true; 
    YAHOO.ext.UpdateManager.defaults.indicatorText = '<div class="loading-indicator">Currently loading...</div>'; 
    YAHOO.ext.UpdateManager.defaults.timeout = 60; 
    addUniversalOnload(addConfirmationToLinks); 
</script> 
<link rel="alternate" type="application/rss+xml" title="Bamboo RSS feed" href="/rss/createAllBuildsRssFeed.action?feedType=rssAll" /> 
</head> 
<body> 
<ul id="top"> 
<li id="skipNav"> 
    <a href="#menu">Skip to navigation</a> 
</li> 
<li> 
    <a href="#content">Skip to content</a> 
</li> 
</ul> 
<div id="nonFooter"> 

<div id="hd"> 

<div id="header"> 
<div id="logo"> 
    <a href="/start.action"><img src="/images/bamboo_header_logo.gif" alt="Atlassian Bamboo" height="36" width="118" /></a> 
</div> 
<ul id="userOptions"> 
    <li id="loginLink"> 
     <a id="login" href="/userlogin!default.action?os_destination=%2Fstart.action">Log in</a> 
    </li> 
     <li id="signupLink"> 
      <a id="signup" href="/signupUser!default.action">Signup</a> 
     </li> 
    <li id="helpLink"> 
     <a id="help" href="http://confluence.atlassian.com/display/BAMBOO">Help</a> 
    </li> 
</ul> 
</div> <!-- END #header --> 

<div id="menu"> 
<ul> 
    <li><a id="home" href="/start.action" title="Atlassian Bamboo" accesskey="H"> <u>H</u>ome</a></li> 
    <li><a id="authors" href="/authors/gotoAuthorReport.action" accesskey="U">A<u>u</u>thors</a></li> 
    <li><a id="reports" href="/reports/viewReport.action" accesskey="R"> <u>R</u>eports</a></li> 
</ul> 
</div> <!-- END #menu --> 
</div> <!-- END #hd --> 
<div id="bd"> 
<div id="content"> 
<h1>Header here</h1> 
<div class="topMarginned"> 
     <div id='buildSummaryTabs' class='dashboardTab'> 
     </div> 
    <script type="text/javascript"> 
     function initUI(){ 
      var jtabs = new YAHOO.ext.TabPanel('buildSummaryTabs'); 
      YAHOO.bamboo.tabPanel = jtabs; 


      // Use setUrl for Ajax loading 
      var tab3 = jtabs.addTab('allTab', "All Plans"); 
      tab3.setUrl('/ajax/displayAllBuildSummaries.action', null, true); 

      var tab4 = jtabs.addTab("currentTab", "Current Activity"); 
      tab4.setUrl('/ajax/displayCurrentActivity.action', null, true); 


      var handleTabChange = function(e, activePanel) { 
       saveCookie('atlassian.bamboo.dashboard.tab.selected', activePanel.id, 365); 
      }; 

      jtabs.on('tabchange', handleTabChange); 

      var selectedCookie = getCookieValue('atlassian.bamboo.dashboard.tab.selected'); 
      if (jtabs.getTab(selectedCookie)) 
      { 
       jtabs.activate(selectedCookie); 
      } 
      else 
      { 
       jtabs.activate('allTab'); 
      } 
     } 
     YAHOO.util.Event.onContentReady('buildSummaryTabs', initUI); 
    </script> 
</div> 

<script type="text/javascript"> 
setTimeout("window.location.reload()", 1800*1000); 
</script> 
<div class="clearer" ></div>  
</div> <!-- END #content --> 
</div> <!-- END #bd --> 
</div> <!-- END #nonFooter --> 
<div id="ft"> 
    <div id="footer"> 
     <p> 
      Powered by <a href="http://www.atlassian.com/software/bamboo/">Atlassian Bamboo</a> version 2.2.1 build 1206 - 

      <span title="15:59:44 17 Mar 2009">17 Mar 09</span> 
     </p> 
     <ul> 
      <li class="first"> 
       <a href="https://support.atlassian.com/secure/CreateIssue.jspa?pid=10060&issuetype=1">Report a problem</a> 
      </li> 
      <li> 
       <a href="http://jira.atlassian.com/secure/CreateIssue.jspa?pid=11011&issuetype=4">Request a feature</a> 
      </li> 
      <li> 
       <a href="http://forums.atlassian.com/forum.jspa?forumID=103">Contact Atlassian</a> 
      </li> 
      <li> 
       <a href="/viewAdministrators.action">Contact Administrators</a> 
      </li> 
     </ul> 
    </div> <!-- END #footer --> 
</div> <!-- END #ft --> 

나는 또한 내가 HTTP를 검색 할 수 있습니다 것으로 나타났습니다

답변

1

세르게이, IIRF 2.0에서 ProxyPass로 지시했다 모든 요청 헤더를 올바르게 전달하지 않으며 청크 인코딩을 제대로 처리하지 못했습니다.

ProxyPass를 사용하려면 적어도 IIRF v2.1으로 이동해야합니다.

추신 :이 공공 자원으로 귀하의 질문에 정말 ServerFault.com

1

"Via : 1.1 DESTINATION_IP (IIRF 2.0)"이 재미있을 것 같습니다.

당신이 시도 유무 : 또한

ProxyPass ^/(.*)$   http://localhost:8085/$1 

라인이다 : 가정

RewriteCond %{HTTP_HOST} ^bambooi$ [I] 

가되게합니다 :

RewriteCond %{HTTP_HOST} ^bamboo$ [I] 
+0

속한, 나도 대나무되지 않습니다 post.The 호스트 이름에 DESTINATION_IP 문자열의 실제 IP 주소를 대체했다. 난 configfile 및 호스트 이름을 RewriteCond 올바른지 확인했습니다 그래서 bamboo'i '내 stackoverflow 게시물에 잘못 입력 한. 불행하게도 hostname을 localhost 또는 127.0.0.1로 바꾸면 netstat -na가 모든 인터페이스가 8085 포트에서 수신 대기 중임을 보여줍니다. 어쨌든 Wireshark 덤프가 대나무 서버의 정보를 표시한다는 사실은 프록시가 작동하지만 프록시가 작동한다는 것을 의미합니다. 브라우저에는 표시되지 않습니다. – Sergei