apacheubuntuvirtual-machinerhodecode

Rhodecode apache proxy as a subdirectory issue


I'm running a Ubuntu 12.04 server inside of a vm (vmware) on a Windows Server. I'm running Rhodecode on the vm. I can access RhodeCode fine from the host machine via its IPAddress and the port RHodecode is running on (102.168.226.128:5000) but can't access it from another machine on the network. To fix this I am trying to use an apache proxy as a subdirectory (a coworker suggested this) but am having issues. I added the following code to production.ini

filter-with = proxy-prefix (in [app.main])

and

[filter:proxy-prefix]
use = egg:PasteDeploy#prefix
prefix = /<rhodecode> (at the end of the file)

when i attempt to build the database (sudo paster setup-rhodecode production.ini) I get the following error: The section 'main' is not the application (probably a filter). You should add #section_name, where section_name is the section that configures your application

What am I doing wrong here?


Solution

  • Probably you did nothing wrong, but try this in your production.ini

    [filter-app:main]
    # instead of filter:proxy-prefix
    use = egg:PasteDeploy#prefix
    prefix = /scm
    next = rh
    
    [app:rh] 
    # instead of app:main
    use = egg:rhodecode
    

    Then generate your setup with

    paster setup-rhodecode production.ini#rh
    

    I had the same problem as described in the question and I stumbled across a post from Ian Bicking (that I adapted for the Rhodecode config):

    You have to refer to an [app:*] section with setup-app. So if you have something like:

    [filter-app:main]
    use = something
    next = myapp
    
    [app:myapp]
    blah
    

    Then you have to do paster setup-app deploy.ini#myapp