Crowd Integration of Apache/SVN: Client connect fails due to server error "Couldn't create directory: : [...]"
Asked by Michael173:

Hello out there,

we plan to evaluate the Atlassian Tool-Suite together with Subversion as replacement of an existing SCM-system. A main requirement is a central user and access management which I currently try to set up using Crowd.

I set up the crowd integration following the instructions at:  
<http://confluence.atlassian.com/display/CROWD020/Installing+the+Crowd+Apache+Connector+on+Windows>

When I try to connect to the Subversion repository using a Tortoise Client, I get an error message after entering the login credentials, saying "Server sent unexpected return value (500 internal Server Error) \[...\]".

In the Apache error log on the server is stated the following:

**\[error\] \[client 10.3.53.125\] Couldn't create directory: : No such file or directory at C:/strawberry/perl/site/lib/Cache/FileBackend.pm line 222.\\n**

It looks like a variable is not initialized (see the two ":" behind each other), according to the sourcecode of FileBackend.pm it is "$directory".

So far so good, but why is it empty and which directory should be created? I didn't find any mistake in my configuration but I don't think it's a bug either since this connector probably is in use alreday at other sites.

So I'd appreciate any hints how to solve this!

My setup:

* Server for Vrowd, Apache and Subversion: Windowd 7 64-bit SP1
* Apache 2.2 32-Bit
* Subversion 1.7-rc3
* Strawberry Perl 5.10.1 32-Bit
* Crowd 2.3.3
* Crowd-Apache Connector 1.4 (2.0 not existing for Windows)

All Installations have been performed using Admin-rights!

Further down you'll find the Apache**http.conf** and the **Authz-File**.

Thanks for your help!

Kind regards,

Robert173

-------- httpd.conf --------------

ServerRoot "D:/Apache2.2/"  

Listen 9880  

LoadModule actions_module modules/mod_actions.so  
LoadModule alias_module modules/mod_alias.so  
LoadModule asis_module modules/mod_asis.so  
LoadModule auth_basic_module modules/mod_auth_basic.so  
LoadModule authn_default_module modules/mod_authn_default.so  
LoadModule authn_file_module modules/mod_authn_file.so  
LoadModule authz_default_module modules/mod_authz_default.so  
LoadModule authz_groupfile_module modules/mod_authz_groupfile.so  
LoadModule authz_host_module modules/mod_authz_host.so  
LoadModule authz_user_module modules/mod_authz_user.so  
LoadModule autoindex_module modules/mod_autoindex.so  
LoadModule cgi_module modules/mod_cgi.so  
LoadModule dav_module modules/mod_dav.so  
LoadModule dav_svn_module modules/mod_dav_svn.so  
LoadModule authz_svn_module modules/mod_authz_svn.so   
LoadModule dir_module modules/mod_dir.so  
LoadModule env_module modules/mod_env.so  
LoadModule include_module modules/mod_include.so  
LoadModule isapi_module modules/mod_isapi.so  
LoadModule log_config_module modules/mod_log_config.so  
LoadModule mime_module modules/mod_mime.so  
LoadModule negotiation_module modules/mod_negotiation.so  
LoadModule proxy_module modules/mod_proxy.so  
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so  
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so  
LoadModule proxy_connect_module modules/mod_proxy_connect.so  
LoadModule proxy_http_module modules/mod_proxy_http.so  
LoadModule proxy_scgi_module modules/mod_proxy_scgi.so  
LoadModule setenvif_module modules/mod_setenvif.so  

LoadFile "C:/strawberry/perl/bin/perl510.dll"  
LoadModule perl_module modules/mod_perl.so  

\<IfModule !mpm_netware_module\>  
\<IfModule !mpm_winnt_module\>  
User daemon  
Group daemon  

\</IfModule\>  
\</IfModule\>  

ServerAdmin admin  

DocumentRoot "D:/Apache2.2/htdocs"  

\<Directory /\>  
Options FollowSymLinks  
AllowOverride None  
Order deny,allow  
Deny from all  
\</Directory\>  

\<Directory "D:/Apache2.2/htdocs"\>  
Options Indexes FollowSymLinks  
AllowOverride None  
Order allow,deny  
Allow from all  
\</Directory\>  

\<IfModule dir_module\>  
DirectoryIndex index.html  
\</IfModule\>  

\<FilesMatch "\^\\.ht"\>  
Order allow,deny  
Deny from all  
Satisfy All  
\</FilesMatch\>  

ErrorLog "logs/error.log"  

LogLevel warn  

\<IfModule log_config_module\>  
LogFormat "%h %l %u %t \\"%r\\" %\>s %b \\"%{Referer}i\\" \\"%{User-Agent}i\\"" combined  
LogFormat "%h %l %u %t \\"%r\\" %\>s %b" common  
\<IfModule logio_module\>  
LogFormat "%h %l %u %t \\"%r\\" %\>s %b \\"%{Referer}i\\" \\"%{User-Agent}i\\" %I %O" combinedio  
\</IfModule\>  
CustomLog "logs/access.log" common  
\</IfModule\>  

\<IfModule alias_module\>  
ScriptAlias /cgi-bin/ "D:/Apache2.2/cgi-bin/"  
\</IfModule\>  

\<IfModule cgid_module\>  
\</IfModule\>  

\<Directory "D:/Apache2.2/cgi-bin"\>  
AllowOverride None  
Options None  
Order allow,deny  
Allow from all  
\</Directory\>  

DefaultType text/plain  

\<IfModule mime_module\>  
TypesConfig conf/mime.types  
AddType application/x-compress .Z  
AddType application/x-gzip .gz .tgz  
\</IfModule\>  

Include conf/extra/httpd-default.conf  

\<IfModule ssl_module\>  
SSLRandomSeed startup builtin  
SSLRandomSeed connect builtin  
\</IfModule\>  

\<Location /TCM_Projects_3\>  
DAV svn  
SVNPath "D:/repos/TCM_Projects_3"  
SVNMasterURI [http://abts5063:9880/TCM_Projects_3\<br\< a=""\> /\>
AuthName "UBK-SCM Crowd Access Control System"
AuthType Basic
PerlAuthenHandler Apache::CrowdAuth
PerlSetVar CrowdAppName ubkscm-svn-cache-abtz05bx
PerlSetVar CrowdAppPassword crowd4scm@svn
PerlSetVar CrowdSOAPURL](http://abts5063:9880/TCM_Projects_3%3Cbr)[http://abtz05bx:8095/crowd/services/SecurityServer\<br\< a=""\> /\>
PerlSetVar CrowdCacheEnabled on
PerlSetVar CrowdCacheLocation "D:/temp/CrowdCache"
PerlSetVar CrowdCacheExpiry 300
PerlAuthzHandler Apache::CrowdAuthz
PerlSetVar CrowdAuthzSVNAccessFile "D:\\Apache2.2\\conf\\authzPROJECTS_3.conf"
Require valid-user
\</Location\>](http://abtz05bx:8095/crowd/services/SecurityServer%3Cbr)
[-------- authzPROJECTS_3.conf --------------
\[groups\]
svn-tcm_projects-int-read =
svn-tcm_projects-int-write =
svn-tcm_projects-ext-read =
svn-tcm_projects-ext-write =
\[/\]
\* =
@svn-tcm_projects-int-read = r
@svn-tcm_projects-int-write = rw](http://abtz05bx:8095/crowd/services/SecurityServer%3Cbr)


Answers:
author: huang yi
body: install Cache-Cache 1.06 to fix the problem

<http://search.cpan.org/CPAN/authors/id/J/JS/JSWARTZ/Cache-Cache-1.06.tar.gz>


author: Dan
body: I tried different directory names but got the same error with all of them. Also, tried not defining the CrowdCacheLocation so that default location would be used - again got the same error. CrowdAuth.pm seems to read the location parameter correctly (added a log message) so perhaps there is something wrong in FileCache or how the location is passed to it.

In the end I decided to disable using the cache - for my development purposes the apache-crowd integration seems to work adequately w/o cache.

comments: author: Dan
body: I also had to disable the cache to make it work.

However, it seems that the folder creation worked at least once, since I have the following folder under C: with some cache data inside:

C:\\tmp\\CrowdAuth

I would also be interested in having it work with the cache.


author: Niklas Thulin
body: Anyone else with similar issues and possible solutions?


author: Jake Hertenstein
body: Did you solve this problem? I have the same issue...


Tags: apache

crowd-integration

perl

svn