scm behind reverse proxy on root: svn not working

Stefanos Kalantzis avatarStefanos Kalantzis created an issue

I wanted scm to be accessed from https://scm.domain.com/ using apache's existing ssl.

So I created a new site on apache with this config:

<VirtualHost *:443>
    ServerName scm.domain.com
    AllowEncodedSlashes On

    CustomLog /var/log/apache2/scm.log combined

    ProxyRequests Off
    <Proxy *>
        Order deny,allow
        Allow from all
    </Proxy>

    ProxyPass / http://192.168.178.50:8080/scm-webapp/
    ProxyPassReverse / http://192.168.178.50:8080/scm-webapp/
    ProxyPassReverseCookiePath /scm-webapp /

    <Location />
        Order allow,deny
        Allow from all
    </Location>

    # SSL...
</VirtualHost>

Git is working correctly so far.

If I do an svn checkout I get the following error:

Server sent unexpected return value (501 Not Implemented) in response to PROPFIND request for '/scm-webapp/svn/testsvn/!svn/vcc/default'

Comments (7)

  1. Sebastian Sdorra

    Possible fix 5f4318a8,

    Could you please try the version below:

    With this new version you can tell scm-manager the context path of your reverse proxy e.g.:

    <VirtualHost *:443>
        ServerName scm.domain.com
        AllowEncodedSlashes On
    
        CustomLog /var/log/apache2/scm.log combined
    
        ProxyRequests Off
        <Proxy *>
            Order deny,allow
            Allow from all
        </Proxy>
    
        ProxyPass / http://192.168.178.50:8080/scm-webapp/
        ProxyPassReverse / http://192.168.178.50:8080/scm-webapp/
        ProxyPassReverseCookiePath /scm-webapp /
        RequestHeader set X-Forwarded-Ctx ""
    
        <Location />
            Order allow,deny
            Allow from all
        </Location>
    
        # SSL...
    </VirtualHost>
    

    Please have a look at the "X-Forwarded-Ctx" http header. An empty string means the application is the root application.

  2. Stefanos Kalantzis

    Thank you, it's working !

    Is it safe to use your provided war ?

    Also, I noticed that when I deployed the new version all settings and repositories remained the same. Where do you store these information ?

  3. Sebastian Sdorra

    Yes it is safe. The provided war is version 1.33 of scm-manager with the fix for this issue and no other changes. The informations and repositories are stored in the scm home directory, please have a look at the faq.

  4. Log in to comment
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.