2016-06-22 2 views
3

localhost에서만 작동하는 "편집 및 계속"기능을 사용하는 동안 실제 도메인을 사용하기 때문에 dev 환경에서 프록시를 사용하고 있습니다.프록시를 통한 쿠키 설정

로컬 호스트에 사용자 지정 호스트로 www.site.com을 구성했습니다. (간단한 html 페이지)

나는이 응용 프로그램을 가지고 : localhost:9090 내 로컬 PC에서 내 asp.net mvc 응용 프로그램입니다. www.site.com ajax cors를 통해 localhost:9090으로 전화를 걸지 만 localhost cant는 도메인이 ".site.com"인 쿠키를 생성합니다.

그럼, 사용자 정의 호스트가 widgets.site.com이고 역방향 프록시가 localhost:9090 인 편집 및 계속 기능을 계속 사용할 수 있습니다.

내 로컬 호스트가 와일드 카드 도메인 ".site.com"으로 쿠키를 설정할 수 있습니까?

<rewrite> 
    <rules> 
     <rule name="ReverseProxyInboundRule1" stopProcessing="true"> 
      <match url="(.*)" /> 
      <action type="Rewrite" url="http://localhost:9090/{R:1}" /> 
      <conditions> 
      <add input="{HTTP_COOKIE}" pattern="(.*)" /> 
      </conditions> 
      <serverVariables> 
      <set name="HTTP_ACCEPT_ENCODING" value="" /> 
      <set name="HTTP_COOKIE" value="{c:1}" /> 
      </serverVariables> 
     </rule> 
    </rules> 
    <outboundRules> 
     <rule name="ReverseProxyOutboundRule1" preCondition="ResponseIsHtml1"> 
      <match filterByTags="A, Form, Img" pattern="^http(s)?://widgets.site.com/(.*)" /> 
      <action type="Rewrite" value="http{R:1}://localhost/{R:2}" /> 
     </rule> 
     <preConditions> 
      <preCondition name="ResponseIsHtml1"> 
       <add input="{RESPONSE_CONTENT_TYPE}" pattern="^text/html" /> 
      </preCondition> 
     </preConditions> 
    </outboundRules> 
</rewrite> 

답변

1

this에 따르면 당신이 .domain.tld에 대한 Set-Cookie 할 수 있어야하며 www.domain.tld을 위해 일해야합니다

여기 역방향 프록시입니다 (widgets.site.comlocalhost:9090에 대한 프록시 기억하십시오). 그러나 내 테스트에서 그것은 domain.tld (파이어 폭스에서)에서도 작동하는 것으로 보인다.

P. 127.0.0.1 widgets.site.comC:\Windows\System32\drivers\etc\hosts에 추가하여 역방향 프록시를 건너 뛸 수 있습니다. /etc/hosts. 그런 다음 widgets.site.com127.0.0.1으로 해결합니다.

+0

감사합니다. 호스트 '127.0.0.1 widgets.site.com'을 실행하면 외부 호스트를 사용하도록 프로젝트 설정을 구성해야합니다. 그러면 편집 및 계속 기능이 느슨해집니다 (게시 이유는 무엇입니까?). 문제). – SexyMF