Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I would like to configure my Ubuntu Machine as local web server for multiple project handling.

Am bit confused about the URL/Folder structure of my above system.

I wish to get something like following.

http://localserver/svn/ - will manage the svn.

http://localserver/trac/ - will manage all Trac system.

How can i configure these for multiple project.

http://localserver/svn/project1 - is this possible from a single svn server/trac installation or http://localserver/trac/project1/ ?????

and so on.. or any other easy method to handle these features together for handle multiple project.??

Thanks in advance!!

share|improve this question

migrated from stackoverflow.com Dec 12 '09 at 12:50

This question came from our site for professional and enthusiast programmers.

    
As a heads-up, if Ubuntu is still shipping Trac 0.11.1 and Python 2.6, you should update your version of Trac. There are some known bugs with that combination. –  retracile Dec 14 '09 at 17:47

2 Answers 2

i currently run multiple trac environments with various different trac versions, including multirepos branch. 0.11 tracs obviously have a single svn repo, while a couple of my multirepos envs have >1 repos attached.

svn is served through apache mod_dav_svn (not svnserve) and i'm using apache authnz_ldap for authentication to everything.

https://server/project/name is my trac project tree https://server/svn/name is my svn repo tree

authentication configuration is very similar for both:

apache-trac.conf:

<LocationMatch /project[^/]*>
        AuthType        Basic
        AuthName        "Security"

        <IfModule authnz_ldap_module>
                AuthBasicProvider ldap
                AuthLDAPURL     ldap://server:389/ou=Users,ou=OxObjects,dc=server,dc=domain.net?uid
                AuthLDAPGroupAttribute memberUid
                AuthLDAPGroupAttributeIsDN off
        </IfModule>
</LocationMatch>

# For accessing project list

<Location /project>
       Deny from all
       Allow from 127.0.0.1 192.168.1. 10.24.0.

       Require ldap-group      cn=group, ou=Groups,ou=OxObjects,dc=server,dc=domain.net
</Location>

# Individual project access

<Location /project/foo1>
        Allow from 10.24.0. 192.168.1. 127.0.0.1 somerandomhost.com

        Require ldap-group      cn=visitor, ou=Groups,ou=OxObjects,dc=server,dc=domain.net
        Require user    "andy"
        Require user    "richard"
        Require user    "sam"
        Require user    "bar"
</Location>

apache-svn.conf:

<IfDefine DAV>
<IfDefine SVN>
    <IfModule !mod_dav_svn.c>
            LoadModule dav_svn_module       modules/mod_dav_svn.so
    </IfModule>

    <LocationMatch /svn[^/]*>
            AuthType        Basic
            AuthName        "Security"

            <IfModule authnz_ldap_module>
                    AuthBasicProvider ldap
                    AuthLDAPURL     ldap://server:389/ou=Users,ou=OxObjects,dc=server,dc=domain.net?uid
                    AuthLDAPGroupAttribute memberUid
                    AuthLDAPGroupAttributeIsDN off
            </IfModule>
    </LocationMatch>

    <Location /svn>
            DAV svn
            SVNParentPath /secure/svn
            require         user "sam"
            require         user "richard"

            Order deny,allow
            Deny from all
            Allow from 192.168.1. 10.24.0. 127.0.0.1

            Require ldap-group      cn=group, ou=Groups,ou=OxObjects,dc=server,dc=domain.net

            Satisfy All
    </Location>

    <IfDefine SVN_AUTHZ>
            <IfModule !mod_authz_svn.c>
                    LoadModule authz_svn_module     modules/mod_authz_svn.so
            </IfModule>
    </IfDefine>
</IfDefine>
</IfDefine>

this configuration could probably be consolidated with regexps, havent gotten around to it.

share|improve this answer

Depend on your requirement, do you plan to have multiple svn repositories or only 1 svn repository for all your projects?

You might also want to checkout redmine, which is a Trac clone developed with Ruby on Rails. At these moment, redmine has more active development than Trac and has more features. Redmine also support multiple projects.

I know these are not the answer to your question; but hopefully the info help you narrow down your requirements which make it is easier to give definitive solutions. Either way you decide, the answer to your question actually lies in Apache's configuration as the gatekeeper to your svn and trac/redmine.

share|improve this answer
    
@DJ: thank you very much . i will update you soon if i got a better solution :) –  coderex Dec 12 '09 at 7:10

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.