Android-Chrome을 통해 Confluence 사이트를 보면 URL이 여러 번 리디렉션되지만 데스크톱 Chrome 및 기타 브라우저에서는 그렇지 않습니다.

Android-Chrome을 통해 Confluence 사이트를 보면 URL이 여러 번 리디렉션되지만 데스크톱 Chrome 및 기타 브라우저에서는 그렇지 않습니다.

방금 URL을 게시하고 보기를 테스트했는데 Android의 Chrome에서 다음 URL로 여러 번 리디렉션되는 것을 확인했습니다. 쿠키를 삭제하고 데이터를 검색해 보았지만 여전히 같은 현상이 발생합니다. 이건 꼭 바꿔야 할 사이트 설정인 것 같아요. 사이트는 동일한 가상 머신 내에서 실행되는 NGinX 서버에 의해 프록시되는 Confluence 사이트인 Google Cloud에서 호스팅됩니다.

테스트 사례:

  • Android-Chrome에서 "테스트 URL"로 이동하여 "잘못된 URL"로 리디렉션 --> 이유는 무엇입니까? /어떻게 고치는 지?
  • Android-Chrome에서 "데스크톱 사이트"를 요청하고 "테스트 URL"로 이동하여 예상 URL을 얻습니다.
  • Android-Firefox를 통해 "테스트 URL"로 이동하여 예상 URL을 가져옵니다.
  • 데스크톱 컴퓨터(Win10)의 Chrome/FireFox/Edge/IE(모든 브라우저)에서 "테스트 URL"로 이동하여 예상 URL을 얻으세요!

테스트 URL: https://www.freesoftwareservers.com/display/FREES/Prep+Linux+OS+for+GPU+Passthrough+-+Blacklist+nouveau+and+use+vfio-pci+drivers+script

다른 테스트 URL: https://www.freesoftwareservers.com/display/FREES/Free+Software+Servers

오류 URL: https://www.freesoftwareservers.com/#content/view/327684

참고: 다른 사용자는 이것이 Android Chrome의 특정 문제이지만 Android Firefox 또는 데스크톱 Chrome과 관련이 없음을 확인했습니다. Android Chrome에서도 데스크톱 버전을 요청할 때 작동합니다!

업데이트: 이것은 내 NGinX 구성입니다.

##Confluence
server {
       listen         80;
       server_name    www.freesoftwareservers.com freesoftwareservers.com;

       return         301 https://www.freesoftwareservers.com/;

}

server {
        listen 443 ssl;
        server_name www.freesoftwareservers.com freesoftwareservers.com;

rewrite ^/wiki / permanent;

location / {

        proxy_pass              http://localhost:8091/;
        include                 /etc/nginx/proxy.conf;
    }
}

root@confluence:/etc/nginx/sites-enabled# cat /etc/nginx/proxy.conf
proxy_redirect          off;
proxy_set_header        Host            $host;
proxy_set_header        X-Real-IP       $remote_addr;
proxy_set_header        X-Forwarded-Server $host;
proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
client_max_body_size    10m;
client_body_buffer_size 128k;
proxy_connect_timeout   90;
proxy_send_timeout      90;
proxy_read_timeout      90;
proxy_buffers           32 4k;

답변1

nginx 프록시 구성이 괜찮아 보입니다.

그러나 Confluence에는 모바일 전용 섹션/컨텐츠가 있습니다.

nginx에서 http에서 https로의 리디렉션을 사용하여 루프를 생성하려면 http 링크가 있어야 합니다.

답변2

이 문제는 서버 이름과 프록시 URL 간의 불일치와 관련이 있습니다. 데스크톱에서는 잘 작동하지만 모바일에서는 작동하지 않는 것 같습니다. 사이트를 Google Cloud에서 내 LAN으로 이동했지만 여전히 동일한 문제가 발생하므로 문제가 캐싱과 관련이 없음을 확인할 수 있습니다.

내 프록시를 confluence.freesoftwareservers.com프록시 이름으로 사용하기 전에는 작동했지만 www.freesoftwareservers.com공개적으로 액세스할 수 있는 것으로 변경하면 문제가 해결되었습니다.

이것은 Atlassian 지원에서 받은 작동하는 커넥터입니다(그들의 지원은 훌륭합니다!)

고쳐 쓰다:

https://community.atlassian.com/t5/Confluence-questions/Can-t-view-site-on-Mobile-browser-Redirects-to-many-times/qaq-p/1033424

https://www.freesoftwareservers.com/display/FREES/Confluence+HTTPS+SSL+Reverse+Proxy+via+NginX

이 문제는 TomCat 프록시 커넥터와 관련되어 있습니다.NGinX 설정에는 적용되지 않습니다.

다음 파일을 편집합니다.

nano /opt/atlassian/confluence/conf/server.xml && service confluence restart

이는 NGinX 및 HTTPS를 통한 프록시를 위한 작업 구성입니다.

<Server port="8000" shutdown="SHUTDOWN" debug="0">
    <Service name="Tomcat-Standalone">
        <!--
         =================================================================================$
         DEFAULT - Direct connector with no proxy, for unproxied HTTP access to Confluence.

     If using a http/https proxy, comment out this connector.
     =================================================================================$
    -->

<Connector port="8090"
       maxThreads="200"
       minSpareThreads="25"
       connectionTimeout="20000"
       enableLookups="false"
       maxHttpHeaderSize="8192"
       protocol="HTTP/1.1"
       useBodyEncodingForURI="true"
       redirectPort="8443"
       acceptCount="100"
       disableUploadTimeout="true"
       scheme="https"
       proxyName="www.freesoftwareservers.com"
       proxyPort="443"/>

관련 정보