I have to take over an internal Web server that has been configured by a colleague who is no longer there. Our developpers team asks me to convert applications URLs from an Alias to a Virtualhosts (subdomain naming) system. For instance:
https://srv-intra.mydomain.fr/basecolldev
should become
https://basecolldev.mydomain.fr
Environment specifications:
Linux OpenSUSE Leap 15.3
Server version: Apache/2.4.51 (Linux/SUSE)
PHP 7.4.6 (cli) ( NTS )
Issue description: I can connect to https://basecolldev.mydomain.fr despite some 404 errors showing in access_log file (see at the end of the post). I have then a 404 error page when clicking the login button that redirects to https://basecolldev.mydomain.fr/login. The login page is found and displayed properly when I manually modify the URL to https://basecolldev.mydomain.fr/index.php/login. This means that /index.php is not required for home page connection but is for browsing the website. I need to permanently prevent the /index.php suffix to show up in URL.
I describe below what I have configured so far and what remains unfunctionnal.
I have first created a new vhost file /etc/apache2/vhost.d/basecolldev-ssl.conf :
<VirtualHost basecolldev.mydomain.fr:443>
DocumentRoot "/var/www/BaseCollDev/public"
ServerName basecolldev.mydomain.fr
ErrorLog /var/log/apache2/basecolldev-error_log
TransferLog /var/log/apache2/basecolldev-access_log
LogLevel alert rewrite:trace8
<Directory /var/www/BaseCollDev/public>
#Order allow,deny
#allow from all
#AllowOverride All
Require all granted
Options -Indexes -Includes -ExecCGI -FollowSymlinks
</Directory>
</VirtualHost>
I have then commented the lines related to the application Directory tag in file /etc/apache2/default-server.conf :
DocumentRoot "/var/www"
<Directory "/var/www">
Options FollowSymLinks
AllowOverride None
<IfModule !mod_access_compat.c>
Require all granted
</IfModule>
<IfModule mod_access_compat.c>
Order allow,deny
Allow from all
</IfModule>
</Directory>
Alias /icons/ "/usr/share/apache2/icons/"
Alias /phpmyadmin "/srv/www/htdocs/phpMyAdmin"
<Directory "/usr/share/apache2/icons">
Options Indexes MultiViews
AllowOverride None
<IfModule !mod_access_compat.c>
Require all granted
</IfModule>
<IfModule mod_access_compat.c>
Order allow,deny
Allow from all
</IfModule>
</Directory>
#<Directory "/var/www/BaseCollDev/public">
# AllowOverride All
# Require all granted
#</Directory>
ScriptAlias /cgi-bin/ "/srv/www/cgi-bin/"
<Directory "/srv/www/cgi-bin">
AllowOverride None
Options +ExecCGI -Includes
<IfModule !mod_access_compat.c>
Require all granted
</IfModule>
<IfModule mod_access_compat.c>
Order allow,deny
Allow from all
</IfModule>
</Directory>
<IfModule mod_userdir.c>
UserDir public_html
Include /etc/apache2/mod_userdir.conf
</IfModule>
IncludeOptional /etc/apache2/conf.d/*.conf
IncludeOptional /etc/apache2/conf.d/apache2-manual?conf
Extract from /var/log/apache2/basecolldev-access_log file relating to a connection to the home page:
10.9.4.140 - - [03/Jun/2022:11:02:31 +0200] "GET / HTTP/1.1" 200 54206
10.9.4.140 - - [03/Jun/2022:11:02:31 +0200] "GET /build/runtime.d94b3b43.js HTTP/1.1" 200 1505
10.9.4.140 - - [03/Jun/2022:11:02:31 +0200] "GET /build/app.13d64c6c.js HTTP/1.1" 200 236
10.9.4.140 - - [03/Jun/2022:11:02:31 +0200] "GET /build/2.9935185b.css HTTP/1.1" 200 64639
10.9.4.140 - - [03/Jun/2022:11:02:31 +0200] "GET /build/app.6cefaab5.css HTTP/1.1" 200 163752
10.9.4.140 - - [03/Jun/2022:11:02:31 +0200] "GET /build/2.28b18d57.js HTTP/1.1" 200 261268
10.9.4.140 - - [03/Jun/2022:11:02:31 +0200] "GET /build/images/logoEdVBlanc.png HTTP/1.1" 200 6579
10.9.4.140 - - [03/Jun/2022:11:02:31 +0200] "GET /_wdt/b07606 HTTP/1.1" 404 1280
10.9.4.140 - - [03/Jun/2022:11:02:31 +0200] "GET /build/fonts/fa-solid-900.e8a427e1.woff2 HTTP/1.1" 200 78196
10.9.4.140 - - [03/Jun/2022:11:02:32 +0200] "GET /favicon.ico HTTP/1.1" 404 1280
10.9.4.140 - - [03/Jun/2022:11:02:32 +0200] "GET /_wdt/b07606 HTTP/1.1" 404 1280
10.9.4.140 - - [03/Jun/2022:11:02:33 +0200] "GET /_wdt/b07606 HTTP/1.1" 404 1280
10.9.4.140 - - [03/Jun/2022:11:02:34 +0200] "GET /_wdt/b07606 HTTP/1.1" 404 1280
10.9.4.140 - - [03/Jun/2022:11:02:35 +0200] "GET /_wdt/b07606 HTTP/1.1" 404 1280
Extract from /var/log/apache2/basecolldev-access_log file relating to a connection to the login page:
10.9.4.140 - - [03/Jun/2022:11:03:47 +0200] "GET /login HTTP/1.1" 404 1280
I see no logs in /var/log/apache2/basecolldev-error_log file.
I enclose .htaccess files contents if necessary.
File /var/www/.htaccess :
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
File /var/www/BaseCollDev/public/.htaccess :
DirectoryIndex index.php
<IfModule mod_negotiation.c>
Options -MultiViews
</IfModule>
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_URI}::$0 ^(/.+)/(.*)::\2$
RewriteRule .* - [E=BASE:%1]
RewriteCond %{HTTP:Authorization} .+
RewriteRule ^ - [E=HTTP_AUTHORIZATION:%0]
RewriteCond %{ENV:REDIRECT_STATUS} =""
RewriteRule ^index\.php(?:/(.*)|$) %{ENV:BASE}/$1 [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ %{ENV:BASE}/index.php [L]
</IfModule>
<IfModule !mod_rewrite.c>
<IfModule mod_alias.c>
RedirectMatch 307 ^/$ /index.php/
</IfModule>
</IfModule>
You have AllowOverride None in your <Directory "/var/www">. This means your .htaccess file and therefore your mod_rewrite configuration is not being read. The simplest option is AllowOverride All (you can specify specific overrides too if you want).
You will also need to allow following symlinks (remove -FollowSymlinks, possibly add +FollowSymlinks).
I eventually managed to make it functional, by following:
File /etc/apache2/default-server.conf > changed Allow Override to All:
<Directory "/var/www">
...
AllowOverride All
...
</Directory>
File /etc/apache2/vhosts.d/basecoll-ssl.conf > removed -FollowSymlinks option:
<VirtualHost basecolldev.mydomain.fr:443>
...
<Directory /var/www/BaseCollDev/public>
...
Options -Indexes -Includes -ExecCGI
...
</Directory>
</VirtualHost>
Thanks for help that put me on the right way!
Use AliasMatch instead of Alias:
AliasMatch ^/bar/?(.*) /var/www/bar/$1
Before marking this as answered, please read the entire thing because yes there is a good amount of these questions but NONE of the answers on them have worked at all.
Hosts File
127.0.0.1 localhost
127.0.0.1 abv
httpd.conf
<Directory />
AllowOverride none
Require all granted
</Directory>
index.php
echo "abc";
httpd-vhosts.conf
<VirtualHost *:80>
DocumentRoot "/xampp/htdocs/abv"
ServerName abv
ErrorLog "abv-error.log"
CustomLog "abv-access.log" common
<Directory "/xampp/htdocs/abv">
DirectoryIndex index.php
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
Access LOG
127.0.0.1 - - [21/Jul/2019:10:09:50 +0530] "GET / HTTP/1.1" 200 3
127.0.0.1 - - [21/Jul/2019:10:09:50 +0530] "GET /favicon.ico HTTP/1.1" 404 1053
These Setting are running perfectly and output is showing and now replacing with below
<VirtualHost *:80>
DocumentRoot "F:\Websites\abv"
ServerName abv
ErrorLog "abv-error.log"
CustomLog "abv-access.log" common
<Directory "F:\Websites\abv">
DirectoryIndex index.php
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
Access LOG
127.0.0.1 - - [21/Jul/2019:10:09:57 +0530] "GET / HTTP/1.1" 200 384
127.0.0.1 - - [21/Jul/2019:10:09:57 +0530] "GET /favicon.ico HTTP/1.1" 404 1053
No out is showing WHY?
I would like to exclude this kind of log entries from access.log
66.249.78.134 - - [01/Apr/2016:10:56:29 +0000] "POST /get_subtitle HTTP/1.1" 200 416 "https://example.com/?artist=name&track=song" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
So, in my 000-default.conf and default-ssl.conf files I set these rules
SetEnvIFNoCase User-Agent "^Googlebot" dontlog
CustomLog ${APACHE_LOG_DIR}/access.log combined env=!dontlog
Why Apache continues to log Googlebot activity?
I have researched this for about 2+ hours including 1+ hour of preparing this report (I must be a slow worker, considering I haven't slept in 24 hours :-P)
The virtual server side include works in Dreamweaver (except for image rendering), but does not work when I browse to the web page.
<!--#include virtual="/partialHtml/businessResult.shtml" -->
I realize that I have overridden far too many configuration settings (and if there's a simpler and more elegant way, perhaps just using a .htaccess file in ~/Sites/mysite.com/ then please also comment) ;-)
Starting from the top (1) sudo nano /etc/apache2/httpd.conf
#
# Filters allow you to process content before it is sent to the client.
#
# To parse .shtml files for server-side includes (SSI):
# (You will also need to add "Includes" to the "Options" directive.)
#
AddType text/html .shtml
AddOutputFilter INCLUDES .shtml
(2) sudo nano /etc/apache2/extra/httpd-vhosts.conf
<VirtualHost *:80>
<Directory /Users/tidy/Sites/mysite.com>
Options +FollowSymlinks +SymLinksIfOwnerMatch +Includes
DirectoryIndex index.htm
AllowOverride All
AddType text/html .shtml
AddOutputFilter INCLUDES .shtml
</Directory>
DocumentRoot /Users/tidy/Sites/mysite.com
ServerName mysite.local
ErrorLog "/Users/tidy/Sites/mysite.com/log/error_log"
CustomLog "/Users/tidy/Sites/mysite.com/log/access_log" common
</VirtualHost>
(3) sudo nano /private/etc/apache2/users/tidy.conf
<Directory "/Users/tidy/Sites/">
Options +Indexes +MultiViews +FollowSymlinks +SymLinksIfOwnerMatch +Includes
AllowOverride All
Order allow,deny
Allow from all
AddType text/html .shtml
AddOutputFilter INCLUDES .shtml
</Directory>
(4) sudo nano ~/Sites/mysite.com/.htaccess
AddType text/html .shtml
AddHandler server-parsed .shtml
DirectoryIndex index.html index.htm
Options +Includes
XBitHack on
I also tried to use XBitHack on by doing chmod +x ~/Sites/mysite.com/partialHtml/businessResult.html and then including that file (apparently it makes .html file server side includes efficient, if you don't want to use .shtml files)
Obviously I'm doing a sudo apachectl configtest to make sure everything's okay.
I get a warning (that I've tried to get rid of) but the syntax is OK.
httpd: Could not reliably determine the server's fully qualified domain name, using complexity.local for ServerName
Syntax OK
Then a sudo apachectl restart
Here is my most recent activity in cat ~/Sites/mysite.com/log/access_log
::1 - - [08/Jan/2013:12:11:05 +0000] "OPTIONS * HTTP/1.0" 200 -
::1 - - [08/Jan/2013:12:11:07 +0000] "OPTIONS * HTTP/1.0" 200 -
::1 - - [08/Jan/2013:12:11:08 +0000] "OPTIONS * HTTP/1.0" 200 -
::1 - - [08/Jan/2013:12:11:15 +0000] "OPTIONS * HTTP/1.0" 200 -
::1 - - [08/Jan/2013:12:11:16 +0000] "OPTIONS * HTTP/1.0" 200 -
::1 - - [08/Jan/2013:12:11:17 +0000] "OPTIONS * HTTP/1.0" 200 -
127.0.0.1 - - [08/Jan/2013:12:12:03 +0000] "GET / HTTP/1.1" 200 3924
127.0.0.1 - - [08/Jan/2013:12:12:03 +0000] "GET /css/site.css HTTP/1.1" 200 3077
127.0.0.1 - - [08/Jan/2013:12:12:03 +0000] "GET /css/bootstrap.css HTTP/1.1" 200 124223
127.0.0.1 - - [08/Jan/2013:12:12:03 +0000] "GET /img/logo.png HTTP/1.1" 200 19217
127.0.0.1 - - [08/Jan/2013:12:12:04 +0000] "GET /img/searchFormGradient.gif HTTP/1.1" 200 501
127.0.0.1 - - [08/Jan/2013:12:12:04 +0000] "GET /img/glyphicons-halflings-white.png HTTP/1.1" 200 8777
127.0.0.1 - - [08/Jan/2013:12:12:04 +0000] "GET /img/headerGradient.png HTTP/1.1" 200 216
127.0.0.1 - - [08/Jan/2013:12:12:04 +0000] "GET /js/bootstrap.min.js HTTP/1.1" 200 31596
::1 - - [08/Jan/2013:12:12:14 +0000] "OPTIONS * HTTP/1.0" 200 -
127.0.0.1 - - [08/Jan/2013:12:12:18 +0000] "GET / HTTP/1.1" 304 -
127.0.0.1 - - [08/Jan/2013:12:12:18 +0000] "GET /css/bootstrap.css HTTP/1.1" 304 -
127.0.0.1 - - [08/Jan/2013:12:12:18 +0000] "GET /js/bootstrap.min.js HTTP/1.1" 304 -
127.0.0.1 - - [08/Jan/2013:12:12:18 +0000] "GET /img/logo.png HTTP/1.1" 304 -
127.0.0.1 - - [08/Jan/2013:12:12:18 +0000] "GET /css/site.css HTTP/1.1" 304 -
127.0.0.1 - - [08/Jan/2013:12:12:18 +0000] "GET /img/headerGradient.png HTTP/1.1" 304 -
127.0.0.1 - - [08/Jan/2013:12:12:18 +0000] "GET /img/glyphicons-halflings-white.png HTTP/1.1" 304 -
127.0.0.1 - - [08/Jan/2013:12:12:18 +0000] "GET /img/searchFormGradient.gif HTTP/1.1" 304 -
The HTTP/1.1 304 code is HTTP Error 304 - Not modified which isn't an error, it's a signal from the server to the browser, that the current content hasn't changed since the last request.
As you can see from the GET requests, there's no sign of /partialHtml/businessResult.shtml
Here is my most recent activity in cat ~/Sites/mysite.com/log/error_log
[Tue Jan 08 11:24:49 2013] [error] [client 127.0.0.1] File does not exist: /Users/tidy/Sites/mysite.com/favicon.ico
And after all of that... the Server Side Include mechanism is not working :-(
Any assistance is greatly appreciated.
Tidy.
I think I have the solution to my problem.
I was having the same problem with Server Side Includes on Windows 7, because I was under the false impression that only the included file has to have an .shtml extension.
Because the line:
<!--#include file="partialHtml/businessResult.shtml" -->
Was in a file called:
index.html
The server side include module was not pre-processing the file.
After I changed index.html to index.shtml the server side include module correctly
pre-processed everything.
TL;DR - The file that includes a server side include has to have a .shtml extension.
I want to achieve a svn-root in /var/svn and repositories(projects) in there.
I could get it to work in the browser (http://domain/url gives me "Collection of repositories") but the TortoiseClient is giving me the error mentioned in the title.
I set up a subversion on my ubuntu server by doing the following (shortened):
mkdir /var/svn
svnadmin create /var/svn/test
and my dav_svn.conf looks the following:
<Location /svn>
DAV svn
SVNParentPath /var/svn
SVNListParentPath On
</Location>
I read about sym links possibly causing the problem, so I'll attach my 000-default site as well (it's the standard btw):
<VirtualHost *:80>
ServerAdmin webmaster#localhost
DocumentRoot /var/www
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
Alias /doc/ "/usr/share/doc/"
<Directory "/usr/share/doc/">
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>
I tried like suggested in How do I list all repositories with the SVNParentPath directive on Apache+SVN?
but unfortunately I get another tortoise error then (while I can still see it fine in my browser)
It then gives me "The OPTIONS request returned invalid XML in the response: XML parse error at line 1: no element found"
(and HTTP OPTIONS to that url indeed gives no response body)
Does anyone know what is causing this problem?
Cheers!
Edit: This is the access.log output after trying to reach http://server/svn through tortoise
(with Location /svn)
Notice the 301 .. TortoiseSVN changes the path to 'http://server/svn' without a leading slash, tho I specified to search within 'http://server/svn / '
[10/May/2012:00:42:29 +0200] "OPTIONS /svn HTTP/1.1" 301 573 "-" "SVN/1.7.4/TortoiseSVN-1.7.6.22632 neon/0.29.6"
[10/May/2012:00:42:29 +0200] "OPTIONS /svn HTTP/1.1" 301 573 "-" "SVN/1.7.4/TortoiseSVN-1.7.6.22632 neon/0.29.6"
[10/May/2012:00:42:29 +0200] "OPTIONS /svn HTTP/1.1" 301 573 "-" "SVN/1.7.4/TortoiseSVN-1.7.6.22632 neon/0.29.6"
[10/May/2012:00:42:29 +0200] "PROPFIND /svn HTTP/1.1" 301 516 "-" "SVN/1.7.4/TortoiseSVN-1.7.6.22632 neon/0.29.6"
[10/May/2012:00:42:29 +0200] "OPTIONS /svn HTTP/1.1" 301 573 "-" "SVN/1.7.4/TortoiseSVN-1.7.6.22632 neon/0.29.6"
[10/May/2012:00:42:29 +0200] "PROPFIND /svn HTTP/1.1" 301 516 "-" "SVN/1.7.4/TortoiseSVN-1.7.6.22632 neon/0.29.6"
[10/May/2012:00:42:30 +0200] "OPTIONS /svn HTTP/1.1" 301 573 "-" "SVN/1.7.4/TortoiseSVN-1.7.6.22632 neon/0.29.6"
[10/May/2012:00:42:30 +0200] "PROPFIND /svn HTTP/1.1" 301 516 "-" "SVN/1.7.4/TortoiseSVN-1.7.6.22632 neon/0.29.6"
[10/May/2012:00:42:30 +0200] "OPTIONS /svn HTTP/1.1" 301 573 "-" "SVN/1.7.4/TortoiseSVN-1.7.6.22632 neon/0.29.6"
[10/May/2012:00:42:30 +0200] "OPTIONS /svn HTTP/1.1" 301 573 "-" "SVN/1.7.4 neon/0.29.6"
[10/May/2012:00:42:30 +0200] "OPTIONS /svn HTTP/1.1" 301 573 "-" "SVN/1.7.4 neon/0.29.6"
[10/May/2012:00:42:30 +0200] "OPTIONS /svn HTTP/1.1" 301 573 "-" "SVN/1.7.4/TortoiseSVN-1.7.6.22632 neon/0.29.6"
[10/May/2012:00:42:30 +0200] "OPTIONS /svn HTTP/1.1" 301 573 "-" "SVN/1.7.4/TortoiseSVN-1.7.6.22632 neon/0.29.6"
[10/May/2012:00:42:30 +0200] "OPTIONS /svn HTTP/1.1" 301 573 "-" "SVN/1.7.4/TortoiseSVN-1.7.6.22632 neon/0.29.6"
[10/May/2012:00:42:30 +0200] "OPTIONS / HTTP/1.1" 200 236 "-" "SVN/1.7.4/TortoiseSVN-1.7.6.22632 neon/0.29.6"
(with Location /svn/)
[10/May/2012:00:36:57 +0200] "OPTIONS /svn HTTP/1.1" 200 236 "-" "SVN/1.7.4/TortoiseSVN-1.7.6.22632 neon/0.29.6"
[10/May/2012:00:36:57 +0200] "OPTIONS /svn HTTP/1.1" 200 236 "-" "SVN/1.7.4/TortoiseSVN-1.7.6.22632 neon/0.29.6"
[10/May/2012:00:36:57 +0200] "OPTIONS /svn HTTP/1.1" 200 236 "-" "SVN/1.7.4/TortoiseSVN-1.7.6.22632 neon/0.29.6"
[10/May/2012:00:36:57 +0200] "OPTIONS /svn HTTP/1.1" 200 236 "-" "SVN/1.7.4/TortoiseSVN-1.7.6.22632 neon/0.29.6"
[10/May/2012:00:36:58 +0200] "OPTIONS /svn HTTP/1.1" 200 236 "-" "SVN/1.7.4 neon/0.29.6"
[10/May/2012:00:36:58 +0200] "OPTIONS /svn HTTP/1.1" 200 236 "-" "SVN/1.7.4/TortoiseSVN-1.7.6.22632 neon/0.29.6"
[10/May/2012:00:36:58 +0200] "OPTIONS /svn HTTP/1.1" 200 236 "-" "SVN/1.7.4/TortoiseSVN-1.7.6.22632 neon/0.29.6"
[10/May/2012:00:36:58 +0200] "OPTIONS / HTTP/1.1" 200 236 "-" "SVN/1.7.4/TortoiseSVN-1.7.6.22632 neon/0.29.6"
I konw this is an old thread, however for the beneift of others that find it:
Just a guess, but does the url your browser give you have "viewvc" or some other part that is added in by the svn browser?
i.e. http://mysvn/viewvc/trunk/.....
Tortoise won't check that out since it's not an actual svn url; your svn url is probably something like
http://mysvnsvr/mysvn/trunk.....
On CentOS7, I removed the Alias directive and it works.
The TortoiseSVN Repository Browser doesn't seem to support browsing of collection of repositories.
So if you have the repositories:
/var/svn/repo1
/var/svn/repo2
/var/svn/repo3
and the dav_svn.conf
<Location /svn>
DAV svn
SVNParentPath /var/svn
SVNListParentPath on
</Location>
You can browse them with a web browser pointing at http://server/svn.
With TortoiseSVN you must specify also the name of the repository, e.g.
http://server/svn/repo1
http://server/svn/repo2
http://server/svn/repo3
Following #rdconsolo suggestion on Ubuntu 16.04, remove the Alias directive, works for me
#Alias /svn /var/lib/svn
<Location /svn>
DAV svn
SVNParentPath /var/lib/svn
SVNListParentPath On
AuthType Basic
AuthName "Subversion Repository"
AuthUserFile /etc/apache2/dav_svn.passwd
Require valid-user
</Location>
I encountered the problem in a standard configuration and the reason was that I used the same directory as DocumentRoot for the webserver and as SVNPath in the websvn/davsvn config.
For details see also What is the cause of "svn: E195019: Redirect cycle detected for URL"?
The problem for me was that I had a .htaccess RewriteRule in my document root, asking to add a trailing / to every URL not having one.
Because of that, the SVN clients, trying to call URLs WITHOUT a trailing / such as "https://site/repos/project" got reidrected by apache to "https://site/repos/project/", so the SVN client tries to go to "https://site/repos/project" again, and so on.
SOLUTION: Do not have any rule that add a trailing / that could affect your SVN urls.
Adding the:
SVNListParentPath on
line alone solved this issue for me.
I had the same problem but not for multiple repositories just tags,branches,etc within a repository. Removing the Alias tag in the conf file fixed this. I am running Centos 7 with SVN 1.8 and Tortoise 1.9.