<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>
<channel>
	<title>Comments on: Installing Subversion with Plesk 8.0/ CentOs 4.3 as Subdomain</title>
	<atom:link href="http://alexle.net/archives/138/feed" rel="self" type="application/rss+xml" />
	<link>http://alexle.net/archives/138</link>
	<description>Personal View</description>
	<pubDate>Fri, 19 Mar 2010 14:25:47 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.5</generator>
		<item>
		<title>By: Daniel Sydnes</title>
		<link>http://alexle.net/archives/138#comment-272718</link>
		<dc:creator>Daniel Sydnes</dc:creator>
		<pubDate>Wed, 29 Jul 2009 21:30:27 +0000</pubDate>
		<guid isPermaLink="false">http://alexle.net/archives/138#comment-272718</guid>
		<description>Hi Jaroslav, my apologies for the nearly 8 month delay in responding!

We use Plesk 8.6, although I've set this scenario up in 9.x as well.  In the templates below, substitute  for the appropriate values in your situation.  This recipe assumes you are dedicating a domain for your subversion repositories.

You should already have loaded the packages for both subversion and Apache subversion modules on your platform.  For debian-based distributions like Ubuntu, this would be "subversion" and "libapache2-svn".

Review the module configuration file and comment out everything (/etc/apache2/mods-available/dav_svn.conf).

Enable the Apache svn module.  For debian-based distributions:
   a2enmod dav_svn

You should already have a domain configured in Plesk, say svn.example.com.  Avoid using the subdomains feature, if possible, because subdomains are not "first class citizens" in the Plesk world.  You can't easily configure protected directories, disable PHP Safe Mode, etc.

Set both HTTP and HTTPS to use the same directory.  Protect the domain with its own certificate, either signed by a valid certificate authority or self-signed.

Using Plesk's Protected Directories feature, setup the root (/) as protected for both Non-SSL and SSL.  Create separate web users for each SVN account.

Create a "fakeroot" environment for Apache.

   cd /var/www/vhosts//httpdocs
   mkdir fakeroot
   touch fakeroot/index.html
   chown -R :psacln fakeroot

Create a subversion repository.

   mkdir -p svn/
   svnadmin create  
   chown -R www-data:www-data svn
   chmod -R g+rws svn

Create an SVN access file to delineate user permissions for each repository.  Since the filename begins with .ht, default Apache rules prevent it from being served to visitors.  The usernames should exactly match the web users you created earlier in Plesk.

   /var/www/vhosts//httpdocs/.htaccess_svn
      # Subversion Authorization File

      [groups]
      developers = , , 
      testers = , 

      # Give "read only" access to everyone
      # for the unnamed "root" repository
      [/]
      @developers = r
      @testers = r

      # Give read/write access to developers,
      # read only to testers
      #
      #[:/]
      @developers = rw
      @testers = r

   chown :psacln .htaccess_svn
   chmod ugo+r .htaccess_svn

Create custom Apache configuration files for the domain.

   /var/www/vhosts//conf/vhost.conf:
      
         ## Force all connections to use HTTPS
         RewriteEngine On
         RewriteCond %{HTTPS} off
         RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
     

   /var/www/vhosts//conf/vhost_ssl.conf:
      DocumentRoot /var/www/vhosts//httpdocs/fakeroot

      &#60;Directory /var/www/vhosts//httpdocs/fakeroot&#62;
         Allow from All
         Deny from None
         Order Allow,Deny
      

      
         DAV svn
         SVNParentPath /var/www/vhosts//httpdocs/svn/
         AuthzSVNAccessFile /var/www/vhosts//httpdocs/.htaccess_svn
      

Inform Plesk of the custom configuration files, test the configuration, then reload Apache.

   /usr/local/psa/admin/sbin/websrvmng --reconfigure-vhost --vhost-name=
   apache2ctl configtest
   apache2ctl graceful

That's it.  You're now ready to rock &#38; roll.  The subversion repositories, accounts, and permissions are properly handed by Plesk's backup &#38; migration systems.</description>
		<content:encoded><![CDATA[<p>Hi Jaroslav, my apologies for the nearly 8 month delay in responding!</p>
<p>We use Plesk 8.6, although I&#8217;ve set this scenario up in 9.x as well.  In the templates below, substitute  for the appropriate values in your situation.  This recipe assumes you are dedicating a domain for your subversion repositories.</p>
<p>You should already have loaded the packages for both subversion and Apache subversion modules on your platform.  For debian-based distributions like Ubuntu, this would be &#8220;subversion&#8221; and &#8220;libapache2-svn&#8221;.</p>
<p>Review the module configuration file and comment out everything (/etc/apache2/mods-available/dav_svn.conf).</p>
<p>Enable the Apache svn module.  For debian-based distributions:<br />
   a2enmod dav_svn</p>
<p>You should already have a domain configured in Plesk, say svn.example.com.  Avoid using the subdomains feature, if possible, because subdomains are not &#8220;first class citizens&#8221; in the Plesk world.  You can&#8217;t easily configure protected directories, disable PHP Safe Mode, etc.</p>
<p>Set both HTTP and HTTPS to use the same directory.  Protect the domain with its own certificate, either signed by a valid certificate authority or self-signed.</p>
<p>Using Plesk&#8217;s Protected Directories feature, setup the root (/) as protected for both Non-SSL and SSL.  Create separate web users for each SVN account.</p>
<p>Create a &#8220;fakeroot&#8221; environment for Apache.</p>
<p>   cd /var/www/vhosts//httpdocs<br />
   mkdir fakeroot<br />
   touch fakeroot/index.html<br />
   chown -R :psacln fakeroot</p>
<p>Create a subversion repository.</p>
<p>   mkdir -p svn/<br />
   svnadmin create<br />
   chown -R www-data:www-data svn<br />
   chmod -R g+rws svn</p>
<p>Create an SVN access file to delineate user permissions for each repository.  Since the filename begins with .ht, default Apache rules prevent it from being served to visitors.  The usernames should exactly match the web users you created earlier in Plesk.</p>
<p>   /var/www/vhosts//httpdocs/.htaccess_svn<br />
      # Subversion Authorization File</p>
<p>      [groups]<br />
      developers = , ,<br />
      testers = , </p>
<p>      # Give &#8220;read only&#8221; access to everyone<br />
      # for the unnamed &#8220;root&#8221; repository<br />
      [/]<br />
      @developers = r<br />
      @testers = r</p>
<p>      # Give read/write access to developers,<br />
      # read only to testers<br />
      #<br />
      #[:/]<br />
      @developers = rw<br />
      @testers = r</p>
<p>   chown :psacln .htaccess_svn<br />
   chmod ugo+r .htaccess_svn</p>
<p>Create custom Apache configuration files for the domain.</p>
<p>   /var/www/vhosts//conf/vhost.conf:</p>
<p>         ## Force all connections to use HTTPS<br />
         RewriteEngine On<br />
         RewriteCond %{HTTPS} off<br />
         RewriteRule (.*) <a href="https://%" rel="nofollow">https://%</a>{HTTP_HOST}%{REQUEST_URI}</p>
<p>   /var/www/vhosts//conf/vhost_ssl.conf:<br />
      DocumentRoot /var/www/vhosts//httpdocs/fakeroot</p>
<p>      &lt;Directory /var/www/vhosts//httpdocs/fakeroot&gt;<br />
         Allow from All<br />
         Deny from None<br />
         Order Allow,Deny</p>
<p>         DAV svn<br />
         SVNParentPath /var/www/vhosts//httpdocs/svn/<br />
         AuthzSVNAccessFile /var/www/vhosts//httpdocs/.htaccess_svn</p>
<p>Inform Plesk of the custom configuration files, test the configuration, then reload Apache.</p>
<p>   /usr/local/psa/admin/sbin/websrvmng &#8211;reconfigure-vhost &#8211;vhost-name=<br />
   apache2ctl configtest<br />
   apache2ctl graceful</p>
<p>That&#8217;s it.  You&#8217;re now ready to rock &amp; roll.  The subversion repositories, accounts, and permissions are properly handed by Plesk&#8217;s backup &amp; migration systems.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dan</title>
		<link>http://alexle.net/archives/138#comment-246548</link>
		<dc:creator>Dan</dc:creator>
		<pubDate>Thu, 12 Feb 2009 04:22:14 +0000</pubDate>
		<guid isPermaLink="false">http://alexle.net/archives/138#comment-246548</guid>
		<description>Wow! Thanks a lot, great article.  This works with Subversions 1.4  as written.   And the only place you can find a working step-by-step guide to get subversions installed.  This was my 9th "tuitorial". Got it working in about 1.5 hours.  I'm a noob

And yeah, few typos, but I too was following the instructions at 3am, and I think weary minds think alike. :)   The SERVER HTTPD RESTART typo caught me off guard. I copied and pasted it and didn't know wth was wrong.  Should be service.  Doh

One other thing, I couldn't get SVNParentPath to work (as some people in the comments suggested), I had to use SVNPath, and only have one svn repository.   Svnparant would work, but sometimes would get a permision denied to commit.  Stilldon't understand why it was just sometimes. No problems was just SVNPath

Should mention that you only have reset Plesk on FIRST time you add the vhost.conf to the domain/subdomain. It merges it into the main http.conf then after that when make a change can restart apache only to get the new changes.</description>
		<content:encoded><![CDATA[<p>Wow! Thanks a lot, great article.  This works with Subversions 1.4  as written.   And the only place you can find a working step-by-step guide to get subversions installed.  This was my 9th &#8220;tuitorial&#8221;. Got it working in about 1.5 hours.  I&#8217;m a noob</p>
<p>And yeah, few typos, but I too was following the instructions at 3am, and I think weary minds think alike. <img src='http://alexle.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />   The SERVER HTTPD RESTART typo caught me off guard. I copied and pasted it and didn&#8217;t know wth was wrong.  Should be service.  Doh</p>
<p>One other thing, I couldn&#8217;t get SVNParentPath to work (as some people in the comments suggested), I had to use SVNPath, and only have one svn repository.   Svnparant would work, but sometimes would get a permision denied to commit.  Stilldon&#8217;t understand why it was just sometimes. No problems was just SVNPath</p>
<p>Should mention that you only have reset Plesk on FIRST time you add the vhost.conf to the domain/subdomain. It merges it into the main http.conf then after that when make a change can restart apache only to get the new changes.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jaroslav</title>
		<link>http://alexle.net/archives/138#comment-234311</link>
		<dc:creator>Jaroslav</dc:creator>
		<pubDate>Tue, 02 Dec 2008 08:03:15 +0000</pubDate>
		<guid isPermaLink="false">http://alexle.net/archives/138#comment-234311</guid>
		<description>hello all.
thanks for such a nice post.

to: Daniel Sydnes 

can you share your steps you were using to achieve this setup ? 

what version of plesk are you running? 

thanks !</description>
		<content:encoded><![CDATA[<p>hello all.<br />
thanks for such a nice post.</p>
<p>to: Daniel Sydnes </p>
<p>can you share your steps you were using to achieve this setup ? </p>
<p>what version of plesk are you running? </p>
<p>thanks !</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Daniel Sydnes</title>
		<link>http://alexle.net/archives/138#comment-230263</link>
		<dc:creator>Daniel Sydnes</dc:creator>
		<pubDate>Sun, 16 Nov 2008 21:48:29 +0000</pubDate>
		<guid isPermaLink="false">http://alexle.net/archives/138#comment-230263</guid>
		<description>We setup our SVN a bit differently.  We located the repositories under one of our virtual host web roots:

/var/www/vhosts//httpsdocs/svn

In the virtual host's vhost.conf, we added the svn and authz declarations.  You can also do this in the appended apache conf file for svn, depending on your particular Linux distribution.

We then configured svn as a protected directory and configured the vhost.conf appropriately.

This has some benefits, as users &#38; passwords can be updated through the Plesk control panel.  Since svn is within the Plesk virtual host container, it gets backed up nightly and can be easily migrated with the domain.</description>
		<content:encoded><![CDATA[<p>We setup our SVN a bit differently.  We located the repositories under one of our virtual host web roots:</p>
<p>/var/www/vhosts//httpsdocs/svn</p>
<p>In the virtual host&#8217;s vhost.conf, we added the svn and authz declarations.  You can also do this in the appended apache conf file for svn, depending on your particular Linux distribution.</p>
<p>We then configured svn as a protected directory and configured the vhost.conf appropriately.</p>
<p>This has some benefits, as users &amp; passwords can be updated through the Plesk control panel.  Since svn is within the Plesk virtual host container, it gets backed up nightly and can be easily migrated with the domain.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: jz</title>
		<link>http://alexle.net/archives/138#comment-227827</link>
		<dc:creator>jz</dc:creator>
		<pubDate>Sat, 08 Nov 2008 09:01:31 +0000</pubDate>
		<guid isPermaLink="false">http://alexle.net/archives/138#comment-227827</guid>
		<description>http://alexle.net/archives/139 is gone?</description>
		<content:encoded><![CDATA[<p><a href="http://alexle.net/archives/139" rel="nofollow">http://alexle.net/archives/139</a> is gone?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Calle</title>
		<link>http://alexle.net/archives/138#comment-198247</link>
		<dc:creator>Calle</dc:creator>
		<pubDate>Thu, 14 Aug 2008 19:01:08 +0000</pubDate>
		<guid isPermaLink="false">http://alexle.net/archives/138#comment-198247</guid>
		<description>I spent a whole lot of time tracking down why apache wouldn't use my config for the svn.mysite.com/ location. I finally saw that plesk had already configured the directory (.../subdomains/svn/httpdocs) for that location so I just commented that out and now it work, yay! 

Great job, thanks!</description>
		<content:encoded><![CDATA[<p>I spent a whole lot of time tracking down why apache wouldn&#8217;t use my config for the svn.mysite.com/ location. I finally saw that plesk had already configured the directory (&#8230;/subdomains/svn/httpdocs) for that location so I just commented that out and now it work, yay! </p>
<p>Great job, thanks!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Benoit Pereira da silva</title>
		<link>http://alexle.net/archives/138#comment-150505</link>
		<dc:creator>Benoit Pereira da silva</dc:creator>
		<pubDate>Sat, 03 May 2008 12:47:07 +0000</pubDate>
		<guid isPermaLink="false">http://alexle.net/archives/138#comment-150505</guid>
		<description>Thanks very much indeed for that clear and well documented work.


b</description>
		<content:encoded><![CDATA[<p>Thanks very much indeed for that clear and well documented work.</p>
<p>b</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Andrew</title>
		<link>http://alexle.net/archives/138#comment-104152</link>
		<dc:creator>Andrew</dc:creator>
		<pubDate>Sun, 20 Jan 2008 15:00:59 +0000</pubDate>
		<guid isPermaLink="false">http://alexle.net/archives/138#comment-104152</guid>
		<description>Thanks SO much for this!!

I was using the mutple repo setup on plesk (knownhost), and found I have to use (in vhost.conf)

SVNParentPath /var/svnrepos

Instead of Svnpath

to avoid "Could not open the requested SVN filesystem"</description>
		<content:encoded><![CDATA[<p>Thanks SO much for this!!</p>
<p>I was using the mutple repo setup on plesk (knownhost), and found I have to use (in vhost.conf)</p>
<p>SVNParentPath /var/svnrepos</p>
<p>Instead of Svnpath</p>
<p>to avoid &#8220;Could not open the requested SVN filesystem&#8221;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Daniel Tome</title>
		<link>http://alexle.net/archives/138#comment-93880</link>
		<dc:creator>Daniel Tome</dc:creator>
		<pubDate>Fri, 28 Dec 2007 03:36:41 +0000</pubDate>
		<guid isPermaLink="false">http://alexle.net/archives/138#comment-93880</guid>
		<description>Thanks for posting this process,

You should update the command: #yum mod_dav_svn 
it should be: #yum install mod_dav_svn 

cheers,</description>
		<content:encoded><![CDATA[<p>Thanks for posting this process,</p>
<p>You should update the command: #yum mod_dav_svn<br />
it should be: #yum install mod_dav_svn </p>
<p>cheers,</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: dylan oliver</title>
		<link>http://alexle.net/archives/138#comment-82298</link>
		<dc:creator>dylan oliver</dc:creator>
		<pubDate>Tue, 27 Nov 2007 15:01:10 +0000</pubDate>
		<guid isPermaLink="false">http://alexle.net/archives/138#comment-82298</guid>
		<description>/var/svnrepo should not be world-writeable (777) unless you want any user to be able to delete it.

instead (assuming you've already executed the commands indicated in this tutorial):

chown -R apache.apache /var/svnrepo
chmod o-rwx /var/svnrepo</description>
		<content:encoded><![CDATA[<p>/var/svnrepo should not be world-writeable (777) unless you want any user to be able to delete it.</p>
<p>instead (assuming you&#8217;ve already executed the commands indicated in this tutorial):</p>
<p>chown -R apache.apache /var/svnrepo<br />
chmod o-rwx /var/svnrepo</p>
]]></content:encoded>
	</item>
</channel>
</rss>

<!-- Dynamic Page Served (once) in 0.324 seconds -->
