subversion status code 404

2019-08-29 07:52发布

问题:

i do want to run subversion on my ubuntu 12.04. In fact i have already installed it (v.1.6). I have also configured the /etc/apache2/mods-available/dav_svn.conf so it looks like this:

<Location /svn>
 DAV svn
 SVNPath /repo/mml
 AuthType Basic
 AuthName "Subversion Repository"
 AuthUserFile /etc/subversion/passwd
 Require valid-user
</Location>

I have added a User+Password to the mentioned file and did chown -R www-data:www-data /repo . Now if i try to browse to my repo on my working machine using

http://myserver/svn 

im getting "Status Code: 404" without any Exception or Stacktrace! If i try to go to

http://localhost/svn 

on the server im getting

"-bash: http://localhost/svn: No such file or directory".

I have checked the apache error.log but there are no errors. My acces.log is empty.

Do you have any idea of what i might did wrong in my configuration? Do you have any idea of what could go wrong?

EDIT: I think i figured out what the Problem is. I created a config file for jenkins which routes incomming request on port 80 to port 8080 /etc/apache2/sites-available/jenkins. If i delete this configuration, i can not access jenkins from my working machine anymore, because http://my-ip:8080 times out. This is my VirtualHost config.

<VirtualHost *:80>
 ServerAdmin webmaster@localhost
 ServerName ci.company.com
 ServerAlias ci
 ProxyRequests Off
 <Proxy *>
    Order deny,allow
    Allow from all
 </Proxy>
 ProxyPreserveHost on
 ProxyPass / http://localhost:8080/
</VirtualHost>

I found out a solution to this Problem. The key is to use jenkins with a prefix. Define --prefix=/jenkins in the jenkins ARGS in /etc/default/jenkins. After this you are able to proxy pass /jenkins requests, see the updated config:

<VirtualHost *>
 ServerAdmin webmaster@localhost
 ServerName ci.company.com
 ServerAlias ci
 ProxyRequests Off
 <Proxy *>
  Order deny,allow
  Allow from all
 </Proxy>
 ProxyPreserveHost on
 ProxyPass /jenkins http://localhost:8080/jenkins
</VirtualHost>

回答1:

404 HTTP status is "Not Found". In Subversion, it may be related.. some pages suggest permission problems can also be a possible cause.

Did you do a chmod -R 770 /repo/mml/*?

http://svn.haxx.se/users/archive-2006-09/0601.shtml



回答2:

I found out a solution to this Problem. The key is to use jenkins with a prefix. Define --prefix=/jenkins in the jenkins ARGS in /etc/default/jenkins. After this you are able to proxy pass /jenkins requests, see the updated config:

<VirtualHost *>
 ServerAdmin webmaster@localhost
 ServerName ci.company.com
 ServerAlias ci
 ProxyRequests Off
 <Proxy *>
  Order deny,allow
  Allow from all
 </Proxy>
 ProxyPreserveHost on
 ProxyPass /jenkins http://localhost:8080/jenkins
</VirtualHost>